出于某种原因,我无法完成这项工作?我想比较前一天和当前日期的文件。
awk 'FNR==NR{a[NR]=$2;next}{print $1,$2-a[FNR]}' Router_Evi_`(strftime("%y-%m-%d", systime()-86400))`.txt Router_Evi_`(date +"%y-%m-%d")`.txt > temp_plus_minus.txt
谢谢
出于某种原因,我无法完成这项工作?我想比较前一天和当前日期的文件。
awk 'FNR==NR{a[NR]=$2;next}{print $1,$2-a[FNR]}' Router_Evi_`(strftime("%y-%m-%d", systime()-86400))`.txt Router_Evi_`(date +"%y-%m-%d")`.txt > temp_plus_minus.txt
谢谢
您对 awk 脚本和 shell 感到困惑,$(..)
或者
`...`
你给的命令是:
awk '....' foo_`(awkcode)`.txt bar_`(shell cmd)`.txt
^
---problem----------|
这行不通。因为你不能让 shell 解释和执行你的 awk 代码。您应该在反引号中编写 shell 命令/代码。或像这样:
foo_$(awk 'BEGIN{print strftime("%y-%m-%d", systime()-86400)}').txt
最好先在变量中获取两个文件名(如果它们是动态的),然后调用 awk 脚本。把所有东西都放在一条线上并不总是最好的解决方案。