我在linux上使用ssh来远程访问第二个linux。 ssh的作用是使我的Linux终端成为远程Linux的终端,而我在终端中输入的内容将在远程Linux上执行。现在,我希望在建立远程访问后使用Shell脚本输入命令。
我使用以下bash来执行ssh部分:
#!/bin/sh
ssh user@192.168.178.160
之后它会提示输入密码,我输入密码,然后我就连接到远程主机了。 但之后我需要输入一些额外的命令来自动执行(也来自shell脚本),但只需在上面的代码行之后输入它们就可以了。
任何想法如何做到这一点?
答案 0 :(得分:4)
告诉ssh
将它们发送到要执行的远程shell。
#!/bin/sh
ssh user@192.168.178.160 << EOF
./foo bar 42
cat baz/quux
EOF
答案 1 :(得分:0)
将命令放在最后:
ssh user@192.168.178.160 echo foobar
要执行多个命令,请使用多行字符串:
ssh user@192.168.178.160 '
echo foo
echo bar
'