如何在shell脚本中实现 scp 文件的时候不手动输入密码

一、B请求命令,将A服务器文件copy到B服务器文件

#!/usr/bin/expect -f

set password 123456

#download

spawn scp root@39.99.144.33:/opt/mysqlbak/kwydatamanage_20210716.sql   /opt/mysqlbak

set timeout 300 

expect "root@39.99.144.33's password:"

set timeout 300 

send "$password\r"

set timeout 300 

send "exit\r"

expect eof 

安装 expect  sudo apt-get install expect

执行文件授权使用命令   chmod +x ./synchronizefilestolocal.php

执行命令 expect synchronizefilestolocal.php (执行文件名称synchronizefilestolocal.php )

如何传递参数 ,请参考w3c xshell

二、B请求命令,将B服务器文件copy到A服务器文件夹中

#!/usr/bin/expect -f

set password 123456

#upload

spawn scp /opt/mysqlbak/kwydatamanage_20210716.sql  root@39.99.144.33:/opt/mysqlbak/kwydatamanage_20210716.sql

set timeout 300 

expect "root@39.99.144.33's password:"

set timeout 300 

send "$password\r"

set timeout 300 

send "exit\r"

expect eof

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值