это может решить вашу проблему, и даже более сложный сценарий.
жный дубликат:
Как использовать SSH для запуска сценария оболочки на удаленной машине?
Я пытаюсь создать bash-скрипт, который запускается на ежедневных заданиях cron моего удаленного сервера, чтобы автоматически входить через ssh в другой unix-бокс, выполнять несколько команд и затем выходить.
#!/bin/bash
ssh machinehost.com -l admin -p 2222 "/usr/bin/find /share/Public/backups/set0 -mtime +14 | xargs rm -f;
/usr/bin/find /share/Public/backups/set1 -mtime +4 | xargs rm -f;
/usr/bin/find /share/Public/backups/set2 -mtime +3 | xargs rm -f;
/usr/bin/find /share/Public/backups/,set3 -mtime +21 | xargs rm -f;
/usr/bin/find /share/Public/backups/set4 -mtime +2 | xargs rm -f;
/usr/bin/find /share/Public/backups/set5 -mtime +2 | xargs rm -f;
"
Проблема, с которой я столкнулся, заключается в том, что мне нужно изменить существующий код, чтобы сделать что-то более сложное перед каждой командой, например
if [ $(ls /share/Public/backups/set1 -1 | wc -l ) -gt 4 ] then run above command
fi
Как мне выполнить эту команду на удаленной машине ssh, а не на моей локальной cron?