多进程同时处理的 Expect 脚本技巧
在自动化脚本编写中,经常会遇到需要同时处理多个进程的情况。本文将深入探讨如何使用 Expect 脚本实现多进程的同时处理,以及如何简化脚本编写,提高效率。
1. 隐式与显式 Spawn ID
在之前的示例中,我们通过设置 spawn_id 变量来切换 send 和 expect 命令与不同进程的通信。例如:
set spawn_id $ftp
send "get $filel\r";
set spawn_id $write
expect "220*ftp> "
send "successfully retrieved file\r"
set spawn_id $ftp
send "get $file2\r";
expect "220*ftp> "
除了这种隐式的方式,我们还可以使用显式的参数来指定 spawn id 。通过 -i 标志,我们可以直接将 spawn id 作为参数传递给 send 和 expect 命令,而不依赖于 spawn_id 变量。例如:
send -i $write "successfully retrieved file\r"
使用
超级会员免费看
订阅专栏 解锁全文

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



