探索 Expect:用户与进程交互及相关操作指南
1. 引言
在脚本编写中,与用户和进程进行交互是一项常见且重要的任务。同时,密码安全、终端参数设置、程序执行等方面也需要我们仔细考虑。本文将深入探讨如何使用 Expect 脚本进行这些操作,帮助你更好地处理用户与进程之间的交互。
2. 与用户和进程交互的命令
2.1 send_user 命令
在 Expect 启动时, send 命令可用于将字符串打印到标准输出。但当一个进程被启动后, send 命令会将字符串发送到该进程,而 send_user 命令则始终将字符串发送到标准输出。例如,在 ftp-rfc 脚本中,使用 send_user 命令可以在抑制 ftp 进程的正常输出时,向用户提供交互进度的信息。
#!/usr/local/bin/expect --
# retrieve an RFC (or the index) from uunet via anon ftp
if {[llength $argv] != 1} {
send "usage: ftp-rfc {-index|#}\n"
exit
}
set timeout -1
log_user 0
send "spawning ftp\n"
spawn ftp ftp.uu.net
expect "Name"
send_user "logging in a
超级会员免费看
订阅专栏 解锁全文
98

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



