expect改良版

expect5.sh

 

#!/bin/sh

HENSU=$1

expect -c "
set timeout 5
spawn ssh kenken@$HENSU
expect \"s password:\"
send \"kenken\n\"
expect \"~]\"
send \"su -\n\"
expect \"パスワード:\"
send \"kenken\n\"
send \"ls /tmp\n\"
expect {
default {exit 2}
"cannot" {exit 9}
}
"

main2.sh

[root@chefserver ~]# cat main2.sh
#!/bin/sh

while read line
do

arg1=`cat script.txt | awk '{print $1}'`

 

sh expect5.sh $arg1

if [ $? = 2 ]
then
echo "OK"

else

echo "NG"

fi