shell脚本,结合expect给当前网段所有主机分发任意文件
1.安装expect
yum -y install expect
2.创建iplist.txt文件(要分发的IP地址)
192.168.163.131
192.168.163.134
3.创建user.txt(里面包含密码)
3398986
3398986
4.创建脚本 test.sh,test.log
test.sh
#!/bin/bash
echo "拷贝情况如下:" > /root/test.log
n=`cat /root/iplist.txt | wc -l` #分发的ip数量
for (( i=1; i<=$n; i++ ))
dopasswd=`cat /root/user.txt|head -$i|tail -1`#第i个IP地址的密码ip=`cat /root/iplist.txt|head -$i|tail -1`#第i个IP地址echo $ip
##自动交互
/usr/bin/expect <<EOF
spawn scp /root/1.txt $ip:/root/
expect "yes/no" {send "yes\n;exp_untinue"}
expect "password" {send "$passwd\n"}
expect eof
EOF
if [ $? -eq 0 ];thenecho "$ip:成功" >>/root/test.log
elseecho "$ip:失败" >>/root/test.logfi
done
注:代码后面的注释去掉
shell脚本,结合expect给当前网段所有主机分发任意文件相关推荐
- linux使用shell脚本利用expect工具实现SCP传输文件到多台服务器
1.安装expect yum install expect 2.设置服务器地址,用户名,密码,源路径,目标路径 新建文件host.txt添加如下内容 192.168.0.135 root 密码 源路径 ...
- Linux下shell自动输入密码,shell脚本通过expect脚本实现自动输入密码
背景:在远程文件下载时,需要输入对方的服务器密码,shell不支持交互输入内容,可以用下面两种方式实现 一.在shell脚本中嵌入expect来实现密码输入 expect是一个自动交互功能的工具.ex ...
- 【shell】shell脚本实战-expect语言的使用
文章目录 expect的介绍 1. 含义 2. 应用场景 3. 安装 expect语法介绍 实战案例 1. expect实现ssh自动登录 方法一: 方法二: 传参版 总结 expect的介绍 1. ...
- Shell脚本交互 expect 和send指令
1 概述 expect是一个免费的编程工具语言,用来实现自动和交互式任务进行通信,而无需人的干预.expect需要Tcl编程语言的支持,要在系统上运行expect必须首先安装Tcl. 2 expect ...
- 编写一个shell脚本,使其能够备份/etc目录下所有文件,并且备份的文件名需要自动生成日期,即产生后缀名形如.backup_20210624的文件。
一.实现过程: 目录 一.实现过程: 二.验证结果: 1.在当前目录下,使用vi或者touch命令新建一个shell脚本文件,并且使用chmod命令添加权限(我这里添加的是最高权限),如图: 2.使用 ...
- shell脚本读取每行文本内容url批量下载远程文件
文本内容如下: shell脚本如下: #!/bin/bash for line in $(cat 1.txt) do$(wget -P /home/img $line)echo $line done
- shell脚本——业务上线前扫描网段内所有ip地址
一.前言 当业务上线之前,扫描ip地址,那些地址没有没占用. 通过for循环,一直ping测试IP地址,假设咱们C类网段公有254个地址,从1遍历到254 二.上脚本 #!/bin/bash ip=1 ...
- shell脚本一步完成多层ssh跳转时的文件传输:Multi-layer scp
本文发布于个人公众号:WriteSimpleDemo 专注shell,欢迎关注 前言 写这个工具主要是为了解决一个困惑了我四年的难题,即:多层ssh跳转时的文件传输. 由于工作中,经常需要ssh连接到 ...
- 《Linux Shell脚本攻略》读书笔记第三章 以文件之名
1.生成任意大小文件 dd [root@stone ~]# dd if=/dev/zero of=f1_dd bs=1M count=1 1+0 records in 1+0 records out ...
最新文章
- android 获取布局textview,android – 获取TextView中文本的位置
- c语言 求方程ax,关于求方程ax2+bx+c=0根的问题
- 3.0的USB,我们都用错了。
- 用matlab建立控制系统的数学模型,第二章控制系统的数学模型.ppt
- Java基础_0206:方法的定义与使用
- SAP web 开发 (第二篇 bsp 开发 mvc模式 Part2 )
- (二叉树DFS)下落的树叶
- JAVA 第2课 基本程序设计
- P2617 Dynamic Rankings
- rabbitmq windows 连接 linux,在Centos7中,从主机 Windows 上无法远程访问 Linux 上rabbitmq的解决方法...
- 关于支持FLV、HLS、RTSP、WS-FLV/WS-RTSP、WEBRTC、HEVC/H265的永久免费H5直播点播播放器SkeyeWebPlayer.js断线重连问题
- 咸鱼3D打印—3D打印的基本流程
- 使用MATLAB求矩阵的偏导数,求向量对变量的偏导数问题
- 表格里加横线一分为二_我告诉你excel表格分割线一分为二
- [python]Crypto.Util.number ,long_to_bytes函数说明
- ddddocr 汉字位置识别
- 2021年氧化工艺考试报名及氧化工艺模拟考试题库
- 微信消息管理之被动回复用户消息
- java的Excel导出方式总结
- 六西格玛管理测量系统的特性
热门文章
- java快速排序代码6_分分钟掌握快速排序(Java / Scala 实现)
- mysql innodb 数据恢复_MYSQL INNODB 数据库恢复 转
- java string补空格_Java String字符串补0或空格详解
- ElasticSearch实践(三)Rest API简介
- 西南交大计算机辅助制造a卷,计算机辅助制造 西南交大作业.doc
- Django怎么配置mysql数据库_Django如何配置mysql数据库
- HTML+Jquery实现2022跨年烟花特效,除夕最炫烟花代码,跨年怎能没有烟花
- OpenShift 4.3 - 基于虚拟机的BareMetal离线安装(1-2)
- 在C#中使用反射的简单例子
- linux中的权限管理,Linux中的用户和权限管理