2
Мне нужно ssh в машину и выполнить кучу команд под sudo bash
. Вот то, что я пробовал:Heredoc для вложенной команды в bash
sshpass -p "vagrant" ssh [email protected] "sudo bash -i -c <<EOF
echo
ls
echo
EOF"
Но он бросает мне 'bash: -c: option requires an argument\n'
. Как я могу это исправить?
Параметр '-c' опция требует аргумент в командной строке, а не Heredoc. Heredoc - это перенаправление ввода. – Jdamian
Просто удалите '-c', и он будет работать нормально. – anubhava
Кроме того, '-i' означает« интерактивный », не так ли? Как это возможно, если вы перенаправляете свой стандартный ввод? – Jdamian