PuTTY 仅执行 -m 指定的脚本中的第一个命令

PuTTY 仅执行 -m 指定的脚本中的第一个命令

我尝试对我们的 Avocent 控制台服务器进行自动备份。

内容backup.cmd

putty.exe -ssh [email protected] -pw secretpw -m acs01.txt

内容acs01.txt

cli
cd system_tools/
save_configuration
set ip_address=10.0.0.1
set path_and_filename=/avocent/acs01
set username=ftpacs01
set password=anothersecretpw
save
finish
exit
exit

一切正常,但我有一个问题。PuTTY 只执行命令cli,其他所有命令均未执行。

每条命令执行后可以稍事休息一下吗?

或者是因为cliAvocent 中有一个单独的界面?

谢谢

答案1

如果cli启动“新 shell”,主 shell 将等待其退出并且永远不会运行您的其他命令。

不过,您显然想要在clishell 内运行命令,而不是在它之后运行命令(也许第二个命令除外exit,它可能应该退出主 shell)。

为此,您必须使用适合您系统的语法或适当的命令行参数。您的服务器似乎是某种专有系统,所以我不知道正确的语法。我在网上找到的文档中cli也没有找到任何适当的命令行参数。cli

在 Linux 系统上,通用的解决方案是:

cli <<EOF
cd system_tools/
save_configuration
set ip_address=10.0.0.1
set path_and_filename=/avocent/acs01
set username=ftpacs01
set password=anothersecretpw
save
finish
exit
EOF
exit

答案2

感谢大家的回复和帮助。毕竟,我找到了解决方案。avocent 控制台服务器包含 2 个备选命令。它们完全满足我的需要。

saveconf --help restoreconf --help

<

谢谢+致以最诚挚的问候 schtebo

相关内容