You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Bash脚本中实现Brocade交换机Supportsave命令的自动化?

自动化执行Brocade交换机Supportsave命令的Bash脚本方案

在Bash脚本里处理多交互的命令,核心是按顺序提供每个交互步骤需要的输入,以下是几种实用的实现方式:

方法1:多行输入管道传递

用printf按交互顺序生成输入内容,通过管道直接传给supportsave,每个输入对应一行:

# 按顺序依次提供:确认执行、服务器IP、用户名、密码、协议、远程目录
printf "y\n192.168.1.100\nftpuser\nftppass\nftp\n/support/logs\n" | supportsave

方法2:Here Document( heredoc)

这种方式可读性更强,把所有交互输入按顺序写在分界符之间,直接传递给命令:

supportsave << EOF
y
192.168.1.100
ftpuser
ftppass
ftp
/support/logs
EOF

注:EOF是自定义分界符,只要前后完全一致即可,中间每行对应一个交互提示的输入项。

方法3:SSH远程执行场景

如果是通过SSH连接交换机执行命令,需要用嵌套的Here Document确保输入正确传递到远程会话:

ssh admin@your_switch_ip << SSH_EOF
supportsave << SUPPORTSAVE_EOF
y
192.168.1.100
ftpuser
ftppass
ftp
/support/logs
SUPPORTSAVE_EOF
SSH_EOF

注意事项

  • 明文写密码存在安全风险,建议优先用密钥认证(比如SCP/SFTP协议),或者将密码存入环境变量后引用
  • 输入顺序必须严格匹配supportsave的交互提示顺序,不能错位
  • 若某个提示有默认值(比如协议默认是ftp),可以留空行直接使用默认选项

内容的提问来源于stack exchange,提问作者Abhinandan Talekar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.03 23:28:28