我知道我可以使用以下命令运行放置在 gist.github.com 中的 bash 脚本:
bash -c "$(curl -fsSL https://raw.github.com/gist/5126919)" <arg0> <arg1>
我如何为期望脚本做同样的事情?
我这里有一个样本:
https://gist.github.com/simkimsia/5126919
#!/usr/bin/expect -f
set CHANGESHELL_FOR_USER [lindex $argv 0];
set PASSWORD_OF_USER [lindex $argv 1];
########################################
## switch to another user
## read this http://stackoverflow.com/a/1988255/80353
########################################
sudo -u $CHANGESHELL_FOR_USER -H sh -c "chsh -s /bin/bash"
expect "*?assword:*" {send -- "$PASSWORD_OF_USER\r";}
expect eof
我的目的是为特定用户 chsh。