2

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

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

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

4

4 回答 4

9

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

1)ssh user@host 'command'

2)

ssh user@host <<<EOF
command1
command2
<...>
commandn
EOF
于 2013-02-05T08:56:55.687 回答
5

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

如果这不是一个选项,您可以执行以下操作:

ssh -t theserver.com 'cd /some/dir && bash -i'
于 2013-02-05T08:45:14.190 回答
0

您可以使用以下命令

ssh user@watevr <the_cmd_to_be_executed>
于 2013-02-05T09:53:20.327 回答
0

你可以试试这个:

ssh abc@hostname :/pathto/specific directory
于 2013-02-05T10:51:38.813 回答