Expect 脚本实用技巧与终端模式管理
1. 改进 FTP 操作错误信息
在进行 FTP 操作时,我们可以通过特定的方式改进错误信息的输出。以下是一段示例代码:
sendexpect "cd inet/rfc\r"
sendexpect "binary\r"
sendexpect "get rfc$argv.Z\r"
当通过特定过程传递输出命令时,错误信息可以得到改善。例如,如果 get 命令出现错误,脚本会输出如下信息:
failed: get rfc-2001.Z
若要添加来自 FTP 的错误信息,只需修改失败模式以保存文本字符串,之后可从 expect_out(1,string) 中获取。示例代码如下:
-re "\n... ([^\r]*)\r\nftp> " {
send_error "failed: $cmd\n"
send_error "reason: $expect_out(1,string)\n"
exit
}
若文件未找到,输出将如下所示:
failed: get rfc-2001.Z
reason: rfc-2001.Z: No such file or directory
超级会员免费看
订阅专栏 解锁全文
3

被折叠的 条评论
为什么被折叠?



