kibitz:这是一个非常有用的工具。通过它两个或更多的用户可以连接到同一个shell进程。可以用于技术支持或者培训(参见下图)。
同样可以用于其他一些要求同步的协同任务。例如我希望和另外一个同事一起编辑一封信件,这样通过kibitz我们可以共享同一个运行编辑器的脚本,同时进行编辑和查看信件内容。
自己需要修改kibitz脚本,因为它里面用的是rlogin登录的,而一般都开放了ssh,因此要把
spawn rlogin $host -l $proxy -8这句改为
spawn ssh $host -l $proxy
而且在下面的expect句中,它没有判断是否是第一次,第一次时,会询问yes/no,
所以,在expect句里的最前面,加上
"*yes*no)*" {
send "yes/r"
exp_continue
}
下面是自己编写的用于自动登录的脚本。
#!/bin/bash
if [ $# != 4 ] ; then
echo Usage: auth username address port passward
exit
fi
#[lrange list begin last]
cat >logon.sh <<EOF
#!/usr/bin/expect -f
set timeout 5
set username [lindex /$argv 0]
set address [lindex /$argv 1]
set port [lindex /$argv 2]
set passwd [lindex /$argv 3]
spawn ssh /$username@/$address -p /$port
expect "*assward:"
send "/$passwd/r"
expect "]*"
send "df -h/r"
interact
EOF
chmod 700 logon.sh
./logon.sh ${1+"$@"}
rm -f logon.sh