我是首发。我有一个下面的文件,其中有 4 列;用管道标志隔开。
test.unl
XCS|10|20|20200505|
AWX|20|10|20200606|
WSX|20|10|20200517|
RFV|20|10|20200520|
TGB|10|20|20200609|
Run Code Online (Sandbox Code Playgroud)
我需要写一个命令,如果第 2 列是 10,第 3 列是 20 然后从最后一列减去当前日期,如果日期之间的差异大于 30,则在文件中打印整行。
我正在运行下面的命令,它给了我错误。
more testfile.unl | awk -F '|' '{if(($2==10 && $3==20) && (((date -d "now" +%s)-(date -d "print$4" +%s)/86400))>>30) print$0}' >> File2.unl
Run Code Online (Sandbox Code Playgroud)
以下是我在运行命令时收到的错误:
awk: {if(($2==10 && $3==20) && ((date -d "print$4" +%s)-(date -d "now" +%s)/86400)>>30) print$0}
awk: ^ syntax error
awk: {if(($2==10 && $3==20) && ((date -d "print$4" +%s)-(date -d "now" +%s)/86400)>>30) print$0}
awk: ^ syntax error
awk: {if(($2==10 && $3==20) && ((date …Run Code Online (Sandbox Code Playgroud) awk ×1