私がしたいことは:
f(){
ssh myserver &&
ls &&
echo 'it works!'
}
ただし、この機能を実行すると。 sshを実行するだけです。
答え1
コマンドリストを次の場所に直接置きます ssh myserver
。
ssh myserver 'ls && echo it works'
答え2
SSHを介して関数や複雑なスクリプトを使用するには、すべてのエスケープ処理が難しいため、SSHコマンドで実行するよりもスクリプトをホストにコピーする方が簡単です。
scp myscipt.sh host:
ssh host "./myscript.sh"
または
cat myScript.sh | ssh host "cat - > myScript.sh; . ./myScript.sh; rm myScript.sh"