Help me pls, I try coding a shell script for awk a rawdata to status.txt
I need to add Error text between minminute missing
rawdata
Lorem|Lorem|Lorem|Lorem|20240617041145|Lorem|Lorem|0|Lorem|Lorem
Lorem|Lorem|Lorem|Lorem|20240617041350|Lorem|Lorem|0|Lorem|Lorem
Lorem|Lorem|Lorem|Lorem|20240617041511|Lorem|Lorem|1|Lorem|Lorem
Lorem|Lorem|Lorem|Lorem|20240617041510|Lorem|Lorem|0|Lorem|Lorem
Lorem|Lorem|Lorem|Lorem|20240617042313|Lorem|Lorem|0|Lorem|Lorem
My script result
1|Copper|your_hostname|202406170411 0|Success
1|Copper|your_hostname|202406170413|0|Success
1|Copper|your_hostname|202406170415|1|Error
1|Copper|your_hostname|202406170415|0|Success
1|Copper|your_hostname|202406170423|0|Success
I need Result
1|Copper|hostname|202406170411|0|Success
1|Copper|hostname|202406170412|empty|empty
1|Copper|hostname|202406170413|0|Success
1|Copper|hostname|202406170414|empty|empty
1|Copper|hostname|202406170415|1|Error
1|Copper|hostname|202406170415|0|Success
1|Copper|hostname|202406170416|empty|empty
1|Copper|hostname|202406170417|empty|empty
1|Copper|hostname|202406170418|empty|empty
1|Copper|hostname|202406170419|empty|empty
1|Copper|hostname|202406170420|empty|empty
1|Copper|hostname|202406170421|empty|empty
1|Copper|hostname|202406170422|empty|empty
1|Copper|hostname|202406170423|0|Success
my script
HOSTNAME=$(hostname)
TYPELINE="|Copper|"
PATHIN="Dummyfile.txt"
RAWPODIR="/save/output"
RAWDATAS="$RAWPODIR/status.txt"
# script
awk -F '|' -v HOSTNAME="$HOSTNAME" -v TYPELINE="$TYPELINE" '{if ($8 == 0) {status = "Success"}
else {status = "Error"} print TYPELINE,HOSTNAME,"|",substr($5, 1, 12),"|",$8,"|",status}' $PATHIN
| sort | uniq -c | awk -F " " '{print $1$2$3$4$5$6$7$8$9 > "'$RAWDATAS'" }'
Recomment me what command should I use?
New contributor
Tar is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.