方式一:

#!/bin/sh
while read -r line
do
expect<<-END
spawn /home/caoyu/ossutil_dst/ossutil64 -c /home/caoyu/ossutil_dst/.ossutilconfig  rm -r oss://$line/
expect {
        "(y or N\)?" { send "y\r"; exp_continue }
       };
END
done < oss_list
[root@ecs-ossimport-master-azxy /home/caoyu]$ cat oss_list
oss-cr-test
oss-re-test

方式二:

#!/bin/sh
for line in `cat oss_list`
do
expect<<EOF
spawn /home/caoyu/ossutil_dst/ossutil64 -c /home/caoyu/ossutil_dst/.ossutilconfig  rm -r oss://$line/
expect {
        "(y or N\)?" { send "y\r"; exp_continue }
       };
EOF
done

ssh免交互登录

./ssh.sh
#!/usr/bin/expect
spawn ssh app@196.36.10.1
expect {
        "(yes/no)?" { send "yes\r"; exp_continue }
        "password:" {send "App@1324\r"}
       };
expect eof    #不需要进行交互意味着结束expect程序,过十秒钟自动退出;如果不写不会执行操作直接退出;

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐