我试图store an awk 命令(命令,而不是结果)在变量中。我的目标是稍后在脚本中使用该变量,并具有不同的输入。例如:
cmd=$(awk '/something/ {if ...} {...} END {...}')
$cmd $input
我尝试将命令存储为$()
(如示例中所示),也可以backticks
...但我无法实现它。
我感谢您的帮助或任何建议:)
不要这样做,使用函数而不是变量,这就是函数的作用:
$ cmd() { awk -v x="$1" 'BEGIN{print x}'; }
$ cmd foo
foo
$ cmd bar
bar
另一个例子:
$ cat file1
a
b
$ cat file2
c
d
e
$ cmd() { awk '{print FILENAME, $0}' "$1"; }
$ cmd file1
file1 a
file1 b
$ cmd file2
file2 c
file2 d
file2 e
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)