还值得学习期待吗?因为我还没有看到任何关于这个主题的新书?有人会推荐一本关于这方面的好书吗?
3 回答
expect 最适合用于控制输出查询并需要响应的脚本。许多其他语言都在努力解决这个问题,并在尝试同时使用这两种语言时在 stdin/stdout 上造成死锁。Expect 还克服了密码输入的一些问题(例如在编写 SSH 脚本时)。
话虽如此,没有必要知道 expect,因为许多其他语言都有一个提供相同行为的 expect 模块(想到 tcl 和 python)。
我不得不说这取决于你的工作。如果您花费大量时间与重复的命令行脚本或 FTP 交互,那么 expect 非常值得添加到您的脚本库中。
SpliFF 在上面写到“......与重复的命令行脚本或 FTP 交互......”虽然我完全支持自动化,并认为 Expect 是必不可少的,但在 2010 年,对于 FTP 或许多其他曾经需要的角色来说,Expect 不是必需的. 例如,15 年前,Expect 是自动化 FTP 的合适方法。现在,大多数脚本语言已经构建了足以用 FTP 代替 Expect 的功能。Perl、Python、Tcl 等已经内置的东西可以实现很多很多自动化,而 Expect 对于这些应用程序来说并不是必不可少的。
在您的工具包中拥有另一个工具永远不会受到伤害。Expect 确实非常好地填补了它的利基市场。
典型的 Expect 书是Exploring Expect。这是您唯一需要的 Expect 书籍。