Мне нужно вызвать код на большом количестве хостов через ssh
.Методы передачи в heredocs
Я попытался использовать так называемый heredocs
.
function verifyFiles {
...
}
...
ssh [email protected]$server <<-SSH
cd $DIRECTORY
verifyFiles
createSum
copyFiles
SSH
ssh [email protected] <<-SSH
cd $DIRECTORY
verifyFiles
verifySums
SSH
...
К сожалению, используемые функции этого способа не известны на стороне сервера.
Есть ли элегантный способ использования этих функций без вставки их в каждый heredoc
?
PS. Вызов кода на каждом хосте немного отличается, но использует тот же набор функций. Мне бы очень хотелось иметь 1 экземпляр каждого определения метода в коде.
PS2. Конечно, мне не нужно использовать heredocs
, если есть лучший способ вызвать этот код.
Пожалуйста, найдите минутку, чтобы подумать о том, как это должно работать. Вы определили функцию на своей локальной машине, но собираетесь ее удаленно выполнить. – hek2mgl
Конечно, я сделал. Я понимаю, почему он не может работать таким образом. Я просто понятия не имею, как достичь своей цели элегантный и короткий путь, не повторяя код. – aerion
Кажется, я неправильно читал, вам нужен способ шаблона кода, а не текст, поэтому мой предыдущий комментарий не подходит –