#!/depot/path/expect -f # startup an su and run the argument # Designed to be run as: su2 !! # Don Libes set timeout -1 log_user 0 spawn su system stty -echo ;# prepare to get password from user send_user "Password: " expect_user -re "(.*)\n" set password $expect_out(1,string) system stty echo expect "*Password:" ;# discard su's password prompt log_user 1 send "$password\r" expect *Sorry* exit *#* eval send [lrange $argv 1 end] \\r interact ;# let user type more cmds to root shell