awk:cmd。 line:1:{print \ $ 9}:语法错误

时间:2016-10-20 02:47:07

标签: shell unix awk

我正在尝试运行以下命令来获取“gis”& shell脚本中的“cpu”用法。但是,当我尝试甚至手动运行此命令时,我得到以下错误。

任何高级/专家都请帮助。

$ top -b | head -n 8 | grep -w gis | awk '{ print \$9}'
awk: cmd. line:1: { print \$9}
awk: cmd. line:1:         ^ backslash not last character on line
awk: cmd. line:1: { print \$9}
awk: cmd. line:1:         ^ syntax error

$ top -b | head -n 8 | grep -w gis | awk '{ print \$10}'

# Same error i am getting for second command as well.

1 个答案:

答案 0 :(得分:1)

你不需要逃避$。您正在使用单引号,因此shell不会插入$ 9。如果您使用双引号,则需要将其转义。

所以,你必须......

top -b | head -n 8 | grep -w gis | awk '{ print $9}'

top -b | head -n 8 | grep -w gis | awk "{ print \$9}"