2

我在 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

谁能向我解释为什么会发生这种情况以及如何使这个 nawk 工作。我想要的只是

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

被执行。

4

1 回答 1

1

因为它被svcadm视为一个没有价值的变量名。尝试

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

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

于 2011-06-22T20:46:57.237 回答