PuTTY登录后自动执行命令并提供输入。

4

我有一个在服务器上运行的程序。

我需要向该程序发送一些特定的输入。

我尝试使用 PuTTY 进行操作。

目前我正在使用:

putty.exe -ssh user@server -pw password -m command.txt

command.txt是包含我试图在服务器上运行的命令的文件。 问题在于终端连接后立即关闭。 此外,我尝试发送的命令是特定于该程序的,因此它们不是Linux命令。类似于:

SomeName ENTER
SomePassword ENTER
SomeNumber ENTER

有没有办法实现这个?

1个回答

3
通过-m开关传递的文件只能包含shell命令。你不能使用它来提供这些命令的输入。如果你真的需要使用PuTTY,则必须使用远程shell功能,例如输入重定向。
但是一般情况下,要自动化命令执行,请使用PuTTY套件中的Plink
使用Plink,你可以这样做:
(
  echo input line 1
  echo input line 2
) | plink.exe -ssh user@example.com -pw password command

或者等效的方式:
plink.exe -ssh user@example.com -pw password command < `input.txt`

input.txt文件包含命令的输入:

input line 1
input line 2

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接