我有以下awk脚本,它采用以下输入文件,input.txt并生成以下输出。有人可以花点时间分解一下这个awk脚本是如何工作的吗?我花了一些时间在它上面,但它没有多大意义。
输入:
$ cat input.txt
FINISHED
RSYNCJOBNA
20140502 0021 2182096 2082096 6 5
2014820905820902 10:02:15
2014820905820902 10:56:42
0:54:27
INITIATED
RSYNCJOBNA
20140502 0022 3282096 3182096 6 5
2014820905820902 15:31:06
0:06:04 ce eque**
Run Code Online (Sandbox Code Playgroud)
输出:
RSYNCJOBNA|0021|20140502|10:02:15|10:56:42|0:54:27|FINISHED
RSYNCJOBNA|0022|20140502|15:31:06| |0:06:04|INITIATED
Run Code Online (Sandbox Code Playgroud)
获取上述输出的命令:
awk -v OFS='|' '/FINISHED|INITIATED/ {
status = $1; getline;
jobname = $1; getline;
sequence = $2; date = $1; getline;
start = $2; getline;
if (status == "FINISHED") { end = $2; getline } else { end = …Run Code Online (Sandbox Code Playgroud) awk ×1