У меня есть файл / tmp / hostlist, содержащий хосты 1000+.Я пытаюсь извлечь строку, содержащую определенное слово из crontab -l на 1000+ хостах, с помощью команды pssh, чтобы ускорить выполнение задачи, но не могу получить строку
Я пытаюсь выполнить команду ниже.Причина использования echo \$(echo )
заключается в отображении вывода в одной строке при запуске более чем одной команды ОС
pssh -h /tmp/hostlist -i "echo \$(echo ), \$(crontab -l|grep root)"
Приведенная выше команда работает нормально, когда я заменил «crontab -l | grep root» на любую ОСКоманда, имеющая проблему с crontab -l -> Она не отображает ожидаемый вывод.
Просто для добавления-
Приведенная выше команда работает, когда используется только одна команда, как показано ниже.
pssh -h /tmp/hostlist -i 'crontab -l|grep -i root' --> Works fine
Есть ли возможность использовать более одной команды и отображать вывод в одной строке с помощью команды crontab -l, как показано ниже.
pssh -h /tmp/hostlist -i "echo \$(echo ), \$(crontab -l|grep root), \$(uptime)" --> doesn't work or doesn't give expected output of crontab -l|grep root
и при использовании ниже без команды crontab работает нормально.
pssh -h /tmp/hostlist -i "echo \$(echo ), \$(uname -a), \$(uptime)" --> Works fine