使用 Plink 在另一个 command/shell 中执行命令

Using Plink to execute command within another command/shell

我的问题是关于 Plink 使用文件(“-m”开关)的方式。

我的命令是:

plink.exe -ssh admin@10.20.30.1 -pw p@ss30rd -m commandfile.txt

我正在尝试连接到交换机并执行这 3 个命令:

system-view
user-interface vty 0
screen-length 200

这里的问题是每个命令都取决于它的前身。换句话说,执行命令 system-view 可以访问新级别或上下文,其中第二个命令 user-interface vty 0 可以有效并执行,而第三个命令仅在其中有效(且可用) ) 仅当 user-interface vty 0 被执行时

有没有一种方法或解决方法可以使用 Plink 实现此目的?

我的目标是将"Plink"命令行放在脚本中并尝试分析输出

提前致谢

如果您使用 -m 开关指定多个命令,它们将一个 之后执行。当您(如果我理解正确的话)想要在 内彼此执行命令 时。使用 -m 开关是不可能的。

您可以做的是使用输入重定向将命令提供给 Plink。这样,Plink 的行为就像您键入这些命令一样。

(
    echo system-view
    echo user-interface vty 0
    echo screen-length 200
) | plink.exe -ssh admin@10.20.30.1 -pw p@ss30rd

请注意,默认情况下,使用 -m 开关,Plink 不会分配伪终端,而使用输入重定向时,它会分配。所以行为并不相同。您可以使用 -t/-T switches 覆盖它。