生成密钥文件  ssh-keygen -q -t rsa -N "" -f /root/.ssh/id_rsa
yum install expect

expect "*"   匹配所有,空行等等。

#!/usr/bin/expect
set ip [lindex $argv 0]
set pass [lindex $argv 1]
spawn  ssh-copy-id -i /root/.ssh/id_rsa.pub $ip
expect {
    "(yes/no)?" {
        send "yes\n"
           expect "password:" {
            send "$pass\n"
           }
    }

    "password:" {
        send "$pass\n"
    }
}
expect eof

chmod expect_l1.sh
./expect_l1.sh ip pass
注意,不是bash脚本,不能sh except_l1.sh
-----------------------------------
sudo 
#!/usr/bin/expect
set timeout 10
spawn sudo -i
expect "*password*"
send "Tm121#^gnaM\n"
interact   #执行完成后保持交互状态,把控制权交给控制台

命令行 expect -c "spawn sudo -i;expect "*password*";send "Tm121#^gnaM"\n;interact"

results matching ""

    No results matching ""