9、Expect脚本:用户交互、安全与终端控制的全面指南

Expect脚本:用户交互、安全与终端控制的全面指南

1. 引言

在自动化脚本编写中,与用户和进程进行交互是一项常见且重要的任务。同时,密码安全、终端模式设置以及程序执行时的输入输出重定向等问题也需要我们妥善处理。本文将深入探讨如何使用Expect脚本实现这些功能,帮助你更好地编写高效、安全的自动化脚本。

2. send_user与expect_user命令

在Expect脚本中, send expect 命令在进程生成前后的行为有所不同。最初, send 用于向标准输出打印字符串,例如:

send "hello world\n"

但当进程生成后, send 会将字符串发送到生成的进程。而 send_user 命令则始终将字符串发送到标准输出,即便进程已经生成。例如,在以下的 ftp-rfc 脚本中:

#!/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 "spawnin
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值