centos 7 expect + shell实现批量创建文件

前端之家收集整理的这篇文章主要介绍了centos 7 expect + shell实现批量创建文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这个问题好久了,一直没整理出来。记得还是上次面试的时候问到如何批量修改1000台机器的主机名。这里给出批量创建内容为Hello,名为1.txt的文件

一、首先安装expect

yum install -y expect

二、准备工作:(1)准备IP地址的列表。vim ip.txt

192.168.1.88

192.168.1.89

192.168.1.90

(2)准备要执行的命令。vim cmd.txt

mkdir /tmp/test

三、脚本部分

  1. #!/bin/bash
  2.  
  3. passwd="123456"
  4. sc=$(cat/tmp/cmd.txt)
  5.  
  6. echo$sc
  7. catip.txt|whilereadline
  8. do
  9. /usr/bin/expect<<EOF
  10. settimeout10
  11. spawnsshroot@$line
  12. expect{
  13. "yes/no"{send"yes\r";exp_continue}
  14. "password:"{send"$passwd\r"}
  15.  
  16. }
  17. expect"]#"
  18.  
  19. send"$sc\r"
  20. send"exit\r"
  21. expecteof
  22. EOF
  23. done
  24. exit0

局限:假如密码不同,此方案需要另行考虑。可能会加上一个passwd的文件

猜你在找的CentOS相关文章