关于nawk和系统命令

关于nawk和系统命令,awk,solaris,ksh,nawk,Awk,Solaris,Ksh,Nawk,我正在Solaris上工作,并且正在编写一个脚本来打开任何已禁用的服务。 以下是输出文件: disabled 7:22:05 svc:/network/bla-bla:default online Jun_14 svc:/network/blu-blu:default 我希望我的代码能够解析这个,并使用nawk本身打开禁用的代码 以下是我尝试过的,但由于某些原因,它不起作用: cat output | nawk '/disabled/ {system(svca

我正在Solaris上工作,并且正在编写一个脚本来打开任何已禁用的服务。 以下是输出文件:

disabled        7:22:05 svc:/network/bla-bla:default
online         Jun_14   svc:/network/blu-blu:default
我希望我的代码能够解析这个,并使用nawk本身打开禁用的代码

以下是我尝试过的,但由于某些原因,它不起作用:

cat output | nawk '/disabled/ {system(svcadm enable $3)}'
以下是它给出的输出:

**sh: line 1: svc:/network/bla-bla:default: not found** 
我在
cat output | grep bl*
上需要的输出是:

online        7:22:05 svc:/network/bla-bla:default
online         Jun_14   svc:/network/blu-blu:default
有人能给我解释一下为什么会发生这种情况,以及如何让这项工作奏效吗。我只想

svcadm enable svc:/network/bla-bla:default

要执行。

因为它将
svcadm
视为变量名,而变量名没有值。试一试

 nawk '{system("svcadm enable " $3)}'

(对不起,我的意思是,作为nawk程序--现在更正了。)

它还不起作用。。它现在抛出错误“sh:line 1:0:notfound”我明白了!!!还有一个问题,因为它不是shell脚本中的字符串连接符……谢谢您。如果你能纠正这个答案,我就继续做,把它标对