#!/usr/bin/expect
set timeout 30
set password [lindex $argv 0]
set host [lindex $argv 1]
# set pgmcmd "ssh $host 'sudo -u admin touch /home/admin/.ssh/authorized_keys; ls /home/admin/.ssh'"
# set pgmcmd "sudo -u admin scp ./filename $host:/home/admin/"
# set pgmcmd "scp $host:~/*machine.info ./"
# set pgmcmd "ssh $host 'sudo -u admin chmod 666 /home/admin/.ssh/auth*; cat /home/user/id_rs* > /home/admin/.ssh/auth*key*' "
# set pgmcmd "ssh $host './getinfo*' "
# set pgmcmd "ssh $host 'sudo yum install -y php httpd php-xml php-xmlrpc' "
# set pgmcmd "ssh $host 'sudo ldconfig' "
# set pgmcmd "ssh $host 'sudo chmod a+s /usr/sbin/httpd' "
# set pgmcmd "ssh $host 'ps -ef|grep httpd' "
# set pgmcmd "ssh $host 'ls -l /usr/sbin/httpd' "
set pgmcmd "ssh $host bash < ./run.sh "
# set pgmcmd "ssh $host '/usr/sbin/httpd' "
# set pgmcmd "ssh $host 'sudo -u admin chmod 400 /home/admin/.ssh/auth*' "
# set pgmcmd "ssh $host 'sudo -u admin ls ~/.ssh/auth*' "
spawn /bin/bash -c $pgmcmd
expect {
"assword:" {
send "$password\r"
}
"user:" {
send "$password\r"
}
}
#expect {
# "user:" {
# send "$password\r"
# }
#}
set timeout 30
set password [lindex $argv 0]
set host [lindex $argv 1]
# set pgmcmd "ssh $host 'sudo -u admin touch /home/admin/.ssh/authorized_keys; ls /home/admin/.ssh'"
# set pgmcmd "sudo -u admin scp ./filename $host:/home/admin/"
# set pgmcmd "scp $host:~/*machine.info ./"
# set pgmcmd "ssh $host 'sudo -u admin chmod 666 /home/admin/.ssh/auth*; cat /home/user/id_rs* > /home/admin/.ssh/auth*key*' "
# set pgmcmd "ssh $host './getinfo*' "
# set pgmcmd "ssh $host 'sudo yum install -y php httpd php-xml php-xmlrpc' "
# set pgmcmd "ssh $host 'sudo ldconfig' "
# set pgmcmd "ssh $host 'sudo chmod a+s /usr/sbin/httpd' "
# set pgmcmd "ssh $host 'ps -ef|grep httpd' "
# set pgmcmd "ssh $host 'ls -l /usr/sbin/httpd' "
set pgmcmd "ssh $host bash < ./run.sh "
# set pgmcmd "ssh $host '/usr/sbin/httpd' "
# set pgmcmd "ssh $host 'sudo -u admin chmod 400 /home/admin/.ssh/auth*' "
# set pgmcmd "ssh $host 'sudo -u admin ls ~/.ssh/auth*' "
spawn /bin/bash -c $pgmcmd
expect {
"assword:" {
send "$password\r"
}
"user:" {
send "$password\r"
}
}
#expect {
# "user:" {
# send "$password\r"
# }
#}
interact
调用方式:
./ssh-key.sh 'passwd' hostname