【发布时间】:2014-01-05 23:06:25
【问题描述】:
我试图在 awk 中为文件的每一行运行一个 shell 命令,而 shell 命令需要一个输入参数。我尝试使用system(),但它无法识别输入参数。
这个文件的每一行都是一个文件的地址,我想运行一个命令来处理那个文件。因此,对于一个简单的示例,我想对每一行使用“wc”命令并将$1传递给 wc。
awk '{system("wc $1")}' myfile
【问题讨论】:
-
您为什么认为 awk 是适合这项工作的工具?似乎
xargs或简单的shellwhile read line循环会更好更容易。 -
另一方面:为什么您认为 wc 是适合这项工作的工具?似乎 awk 内置变量和函数会更好更容易?
标签: shell awk parameter-passing