shell 脚本。自动安装软件,遇到要输入yes怎么自动输入,不用人为介入?

比如sudo apt-get install vim
XXXXXXX
然后会有提醒,将会占用空间XXX, Do you want to continue?[y/n] 要人工输入y才会继续,有什么办法避免么?

第1个回答  推荐于2017-11-04
使用expect 下的spawn命令:
如:
expect << EOF

set timeout 5
spawn ssh -l $hostuser $hostaddr

expect {
"yes/no)?" { send "yes\r";exp_continue }
"assword:" { send "$passwd\r" }
}

expect "$hostuser*"
send "ssh-keygen -t rsa\r"

expect "Enter file in which to save the key*"
send "\r"
expect {
"(y/n)?" { send "n\r";exp_continue }
"Enter passphrase*" { send "\r";exp_continue }
"Enter same passphrase again:" { send "\r" }
}
interact
EOF本回答被提问者和网友采纳
第2个回答  2014-04-03
可以echo ‘yes’ 然后用管道重定向给你的命令
第3个回答  2014-04-03
自动化运维可以搞定这样的事情。
要不要解决?
相似回答