
Я пытаюсь запустить локальный скрипт (например, hostname.sh) в кластере на удаленной машине с помощью SSH, но получаю следующую ошибку:
> ssh -A _remote ssh -A _cluster 'bash' < hostname.sh
stdout: write: Broken pipe
Файл hostname.sh просто выводит имя хоста в этом примере, но в целом может быть более сложным. Ошибка, скорее всего, вызвана неправильным использованием pipe, так как работает следующее:
ssh -A _remote ssh -A _cluster hostname
> _cluster_name
Я пробовал несколько решений, но все они терпят неудачу, так как так или иначе они сводятся к ssh на _remote и затем попытке прочитать hotsname.sh, который в этом случае недоступен. Что работает, так это копирование hostname.sh на _remote, SSH на remote и затем запуск:
ssh _cluster "bash" < hostname.sh
Но это означает, что мне придется постоянно синхронизировать hostname.sh между локальной и удаленной машинами.
Любая помощь будет оценена по достоинству.