前端之家收集整理的这篇文章主要介绍了
linux – 期望脚本支持两个预期的字符,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我希望在
Linux和Solaris机器上通过expect运行sshd restart(我希望在我的ksh脚本中运行)
我创建了expect脚本,所以当期望看到提示“#”然后他运行sshd restart
但问题是我在solars上运行此期望并且提示“>”
那么如何创建一个支持“#”和“>”的期望行提示
在linux上
expect # {send "/etc/init.d/sshd restart\r"}
在solaris
expect > {send "/etc/init.d/sshd restart\r"}
使用glob-pattern:expect {[#>]}
或正则表达式:expect -re {#|>} – 正则表达式模式可以更精细.我建议您将提示符匹配到行尾.通常提示以空格结束,因此您可以:
expect -re {[#>] ?$}
原文链接:https://www.f2er.com/linux/395386.html