Linux SSH非交互式登录执行命令
方式一:通过sshpass
#需要事先安装sshpass
yum install -y sshpass
sshpass -p xxx ssh root@192.168.11.11 "df -h"
方式二:通过expect
#需要事先安装expect
yum install -y expect
#!/bin/bash
expect << EOF
set timeout 10
spawn ssh root@192.168.36.152 ##开启一个会话
##期望
expect {
"yes/no" { send "yes\r"; exp_continue } ##出现yes/no,\r表示换行,没出现yes/no,也可以exp_continue继续
"password:" { send "123\r" }; ##出现password怎么做
}
expect "root@*" {send "df -h\r"}
expect "root@*" {send "exit\r"}
expect eof
EOF
浙公网安备 33010602011771号