Linux 下的expect程序根据一个交互程序 的要求进行自动输入。比如自动登入另外一台机器,比如自动回答各种boring的问题等等。 下面就是一个自动登入的脚本
Step1: expect脚本
[]$ cat ~/autologin
#!/usr/bin/expect
set psword [exec pswsh VwFcef ]
set timeout 5
spawn your login program
expect "password" { send "$psword\r" } \
timeout { send "Wait Too Long, Bye\r" }
expect eof
注意:
pswsh 是解密脚本(show below)
VwFcef 是加密后的密码
your login program 是要你输入密码程序
expect oef 必须的
Step2:解密脚本
[linfa@babbage os]$ cat ~/bin/pswsh
#!/bin/sh
dencrys()
{
sin=$1
sout=`echo $sin | tr 0-9a-zZ-A a-zA-Z0-9`
}
senc=$1
dencrys $senc
echo $sout
Step3 运行expect脚本
[]$ autologin
spawn your login program
Enter password:
User logged in.
注意,一定要设置最小的权限给这两个脚本,不要给被人看
没有评论:
发表评论