Используйте fping для проверки пинга нескольких серверов:
fping server{1,2,3,4,5} |& grep -v 'is alive' | mailx -E -s "Failed ping targets" email@domain
scp
обеспечивает копирование файлов через ssh-соединение, поэтому способность ssh автоматически выполнять команду при подключении - это то, что scp использует для копирования файла(ов), поэтому вы не можете нажать на это.
У вас есть два варианта:
1) скопировать файл через ssh с хоста linux/cygwin:
cat local-file | ssh host 'cat > remote-file & your-command'
2) запустить задание cron для мониторинга заданной папки (/folder
в примере ниже) и обрабатывать файлы (один за другим, сначала перемещая файл в другое место (в /processed/
в примере ниже), чтобы его больше не забирали, затем обрабатывая его с помощью вашего скрипта (your-command
в примере ниже, с файлом для обработки в качестве аргумента).
* * * * * find /folder -type f -mmin +1 -maxdepth 1 | while read file; do mv "$file" /processed/; your-command "/processed/${file##*/}"; done
Убедитесь, что вы добавили -mmin +1
(изменено более одной минуты назад), иначе файлы могут обрабатываться во время копирования.