expect脚本的开头一般都写/usr/bin/expect -f,这个 -f 选项有什么作用呢?
比如如下脚本
[quote]foo
arg 0: hehe
arg 1: bar[/quote]
如果改成 #!/usr/bin/expect, 则输出如下
[quote]arg 0: -c
arg 1: puts foo
arg 2: hehe
arg 3: bar[/quote]
比如如下脚本
#!/usr/bin/expect -f
for {set i 0} {$i < $argc} {incr i}
{
puts "arg $i: [lindex $argv $i]"
}
运行./bar.sh -c "puts foo" hehe bar 输出如下
[quote]foo
arg 0: hehe
arg 1: bar[/quote]
如果改成 #!/usr/bin/expect, 则输出如下
[quote]arg 0: -c
arg 1: puts foo
arg 2: hehe
arg 3: bar[/quote]