【发布时间】:2013-05-08 03:17:04
【问题描述】:
我有一个变量,当我回显时它看起来像这样:
#echo $var
awk '{print $7 " " $6 " " $8 " "}'
但是如果我尝试类似的东西
#ls -lah | exec $var
awk: '{print
awk: ^ invalid char ''' in expression
我做错了什么?
【问题讨论】:
标签: linux string variables awk exec
我有一个变量,当我回显时它看起来像这样:
#echo $var
awk '{print $7 " " $6 " " $8 " "}'
但是如果我尝试类似的东西
#ls -lah | exec $var
awk: '{print
awk: ^ invalid char ''' in expression
我做错了什么?
【问题讨论】:
标签: linux string variables awk exec
您需要调用eval,而不是exec:
ls -lah | eval $var
但是这里有两个注意事项:
ls 输出eval
【讨论】:
只需将 awk 脚本放入变量中
var='{print $7 " " $6 " " $8 " "}'
ls -lah | awk "$var"
【讨论】: