Невозможно выполнить команду на удаленных Linux хостах - PullRequest
0 голосов
/ 21 апреля 2020

У меня несколько хостов (более 20), и мне нужно выполнить команду, но она не работает должным образом. Отдельная команда работает на всех хостах

ps -ef |grep \`cat/z/y/x|tail -1| awk '{print$30}'\` 

Сценарий:

for hsts in `cat /a/b/c/hsts.txt`
  do
  ssh ${id}@${hsts} "cat /z/y/x|tail -1" | awk '{print $30}'
  done

приведенный выше фрагмент даст мне идентификатор процесса на всех хостах. я хочу знать, какой процесс выполняется с этим идентификатором процесса, и я пытаюсь использовать приведенную ниже команду, но она не работает. Любые мысли, что я пропускаю.

ssh ${id}@{hsts} ps -ef |grep "cat/z/y/x/tail -1" |awk '{print $30}'
# above command is not working when i use in the above do loop

1 Ответ

0 голосов
/ 22 апреля 2020

У меня есть несколько хостов (более 20), и мне нужно выполнить команду, но она не работает должным образом.

  1. Этот фрагмент кода работает на нескольких хостах и ​​дает мне идентификатор процесса на хосте, где я работаю.

для hsts в cat /a/b/c//hsts.txt # hsts.txt файл содержит все хосты, которые делают s sh $ {id} @ $ {hsts} "cat / z / у / х | хвост -1 "| awk '{print $ 30}' сделано

Мне нужно изменить указанную выше команду, где мне нужно увидеть процесс, который выполняется на основе идентификатора процесса, который я получаю из приведенного выше фрагмента кода.

Приведенный ниже фрагмент работает отдельные хосты, и это показывает мне процесс, но если я включу вышеупомянутое в for l oop, это не работает. Ценю вашу помощь по этому вопросу. ps -ef | grep `cat / z / y / x | tail -1 | awk '{print $ 30}'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...