1

I want to run multiple commands automatically like sudo bash, ssh server01, ls , cd /tmp etc at server login.. I am using Remote command option under SSH in putty.

I tried multiple commands with delimiter && but not working.

enter image description here

4

4 回答 4

1

您的问题中缺少一些信息。

你说你要跑sudo bash的话ssh server01

sudo 会在您的远程服务器中提示输入密码吗?

假设 sudo 中没有密码,运行 bash 将打开另一个 shell 等待用户输入。在退出该 bash shell 之前,该命令ssh server01不会运行。

如果要运行 2 个命令,请先尝试更简单的命令,例如:

ls -l /tmp ; echo "hi there"

或者,如果您愿意:

ls -l /tmp && echo "hi there"

这行得通吗?

如果您想要在运行 bash 后运行 ssh,您可以尝试:

sudo bash -c "ssh server01"
于 2015-06-16T09:31:36.567 回答
0

那可能是因为命令应该是程序名后跟参数,将直接传递给程序。为了获取&&命令行解释器提供的其他功能,例如bash,试试这个:

/bin/bash -c "command1 && command2"
于 2015-06-16T03:07:56.940 回答
0

我尝试了我在之前的回答中提出的建议。

可以在 putty 中运行 2 个简单的命令,用分号分隔。在我的示例中,我尝试使用 ls 和 echo。远程服务器运行它们,然后会话关闭。

我还尝试通过 ssh 连接到配置为不要求输入密码的远程服务器。在这种情况下,它也可以工作,我连接到第二台服务器,我可以在上面运行命令。退出后,2 个连接将关闭。

所以,请让我们知道您真正需要/想要什么。

于 2015-06-16T09:39:56.823 回答
-1

您可以使用常规 shell 语法在 PuTTY 中执行两个连续的命令。例如使用;&&


但是你想ssh server01sudo bashshell 中执行,对吧?

这些不是两个连续的命令,它是ssh server01sudo bash.

所以你必须使用sudo命令行语法来执行ssh server01,比如

sudo bash ssh server01
于 2015-06-16T07:56:01.550 回答