如何通过SSH bash脚本在远程服务器上cd?

时间:2013-02-05 08:43:20

标签: linux bash unix ssh

我有一个bash脚本,我用它通过ssh连接到远程服务器。这是有效的,但我希望脚本在连接后立即传递cd / some / dir的命令。这似乎不起作用。这是我的代码:

#!/bin/bash
echo "SSHing.."
ssh -i ~/.ssh/some-site.pem xxx@yyy.com
cd /some/dir        
read

如何在建立SSH连接后立即执行cd命令?

5 个答案:

答案 0 :(得分:9)

通过SSH从脚本内部执行命令有两种简单的方法:

1)ssh user@host 'command'

2)

ssh user@host <<<EOF
command1
command2
<...>
commandn
EOF

答案 1 :(得分:4)

通常你只需在远程机器上编辑〜/ .profile。

如果这不是一个选项,你可以这样做:

ssh -t theserver.com 'cd /some/dir && bash -i'

答案 2 :(得分:0)

您可以使用以下命令

ssh user@watevr <the_cmd_to_be_executed>

答案 3 :(得分:0)

你可以试试这个:

ssh abc@hostname :/pathto/specific directory

答案 4 :(得分:-2)

我认为你缺少反击

#!/bin/bash
echo "SSHing.."
ssh -i ~/.ssh/some-site.pem xxx@yyy.com
ssh `cd /some/dir`        
read