我需要一些有关 expect 命令的帮助。我正在尝试自动解压 teamspeak 3 Linux 客户端。
这是我抓取文件的脚本
#!/bin/sh
mkdir /home/test && cd /home/test
wget http://dl.4players.de/ts/releases/3.0.19.4/TeamSpeak3-Client-linux_amd64-3.0.19.4.run
chmod 0777 TeamSpeak3-Client-linux_amd64-3.0.19.4.run
这是我的期望脚本,它在上述脚本之后执行......
#!/usr/bin/expect -f
spawn sh TeamSpeak3-Client-linux_amd64-3.0.19.4.run
expect "\[RETURN\]"
send "\r"
expect ":"
send "q"
expect "Please type y to accept, n otherwise:"
send "y\n"
它不会解压缩,但它应该解压缩。
太感谢了!
答案1
这似乎对我来说是可行的(我还没有测试最终的安装)
#!/usr/bin/expect -f
spawn ./TeamSpeak3-Client-linux_amd64-3.0.19.4.run
expect "\[RETURN\]" {send "\r"}
expect ":" {send "q"}
expect "otherwise:" {send "y\r"}
expect eof {exit}