Относительно nawk и системной команды - PullRequest
2 голосов
/ 23 июня 2011

Я работаю над 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

подлежит исполнению.

1 Ответ

1 голос
/ 23 июня 2011

Поскольку он обрабатывает svcadm как имя переменной, которая не имеет значения.Попробуйте

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

(Извините, я имел в виду это как программу nawk - исправлено сейчас.)

...