2016-12-22 6 views
1

У меня есть некоторые хосты в моем ~/.ssh/конфигурации Некоторые из них находятся в ./my.nodes файлКак запустить один сценарий удаленно на нескольких хостах

Я хочу, чтобы запустить скрипт (./myscript. sh) на хостах, которые перечислены в my.nodes.

я могу это сделать с помощью следующей команды:

parallel --sshloginfile ./my.nodes --bf ./myscript.sh ::: ./myscript.sh ./myscript.sh 

Эта команда будет работать скрипт только 2 узлов. Если я хочу запустить его на N узлах, я должен повторить «myscript.sh» в конце этой команды N раз.

Возможно ли запустить сценарий на всех узлах из файла ./my.nodes без повторения «myscript.sh» в конце команды?

ответ

2

Да, это так.

parallel --nonall --sshloginfile ./my.nodes --bf ./myscript.sh ./myscript.sh 

Пожалуйста, обратите внимание, что --nonall немного вводит в заблуждение ... это означает --onallбез аргументов.