Linux Shell脚本自动化编程实战- scp非交互传文件
2023-09-14 08:59:27 时间
一、ssh远程登陆
1、认识expect
2、shell ssh自动登陆
3、实现ssh批量拷贝公钥
代码:
#!/usr/bin/bash
>ip.txt
## 主机密码
password=admin
## 检查是否安装expect
rpm -q expect>&/dev/null
if [ $? -ne 0 ];then
yum install -y expect
fi
## 生成公钥
if [ ! -f ~/.ssh/id_rsa ];then
ssh-keygen -P "" -f ~/.ssh/id_rsa
fi
## 循环拷贝公钥
for i in {10..111}
do
{
ip=192.168.100.$i
ping -c1 -W1 $ip &>/dev/null
if [ $? -eq 0 ];then
echo "$ip" >> ip.txt
/usr/bin/expect <<-EOF
spawn ssh-copy-id $ip
expect {
"yes/no" { send "yes\r"; exp_continue }
"password:" { send "$password\r" }
}
expect eof
EOF
fi
}&
done
wait
echo "ssh免密配置完成"
cat ip.txt
个人脚本仓库:shell脚本: shell自动化脚本 (gitee.com)相关文章
- 对Linux文件权限的理解
- 应该知道的Linux技巧
- linux c++下遍历文件
- Linux 保护文件 不给修改
- linux基本知识
- Linux主机名域名修改问题
- 推荐一个linux下的web压力测试工具神器webbench
- linux文件同步之rsync学习(一)
- windows环境通过cmd命令到ftp上下载文件到linux服务器
- Linux文件类型与文件权限详解(一)
- 成功解决:将后缀.pyx格式文件(linux环境)编译成pyd文件(windows环境下)实现python编程加载或导入
- 成功解决:将后缀.pyx格式文件(linux环境)编译成pyd文件(windows环境下)实现python编程加载或导入
- Linux xargs从标准输入构建和执行命令行
- L51.linux命令每日一练 -- 第八章 Linux磁盘与文件系统管理命令 -- mkfs和dumpe2fs
- L36.linux命令每日一练 -- 第五章 Linux信息显示与搜索文件命令 -- locate和updatedb
- 嵌入式linux开发,.mak是什么文件
- 有道词典Linux版下载安装
- Linux之Ubuntu:Ubuntu中常使用的快捷键命令(sudo/dpkg等文件处理相关/系统硬件相关/文件管理/文档编辑/磁盘管理/系统管理/备份压缩)、常用基础案例(图文教程)之详细攻略
- 【看表情包学Linux】Redirect 重定向 | 时间相关指令 | 文件查找 | 打包与压缩
- 使用wget批量下载geo数据集的全部文件 linux下载geo数据 geo处理的数据不是下载原始数据 Linux如何下载ftp文件 geo ftp geo ftp下载 geo下载
- [ Linux ] 解决办法:SCP 不同服务器拷贝文件 提示 Permission denied, please try again.解决方法
- Linux常用命令— 目录和文件都能操作的命令
- Linux 文件基本属性