在线等 shell脚本 拷贝另一个服务器上的 文件

编码侠 2017-08-24 05:25:15
写一个 shell脚本 拷贝另一个服务器上的 文件 到 我本机的文件夹里 登录另一个服务器需要密码
...全文
2677 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ipqtjmqj 2017-08-25
  • 打赏
  • 举报
回复
引用 2 楼 u013066753 的回复:
[quote=引用 楼主 u013066753 的回复:] 写一个 shell脚本 拷贝另一个服务器上的 文件 到 我本机的文件夹里 登录另一个服务器需要密码
能帮写个例子吗 [/quote] 远程服务器要配置ssh服务,本机要安装scp和expect命令

#!/usr/bin/expect -f
set ip [lindex $argv 0 ]
set username [lindex $argv 1 ]
set password [lindex $argv 2 ] 
set sourcepath [lindex $argv 3 ]
set destpath [lindex $argv 4 ]
set timeout 10     
spawn scp $username@$ip:$sourcepath $destpath       
expect {                 
 "*yes/no" { send "yes\r"; exp_continue}  
 "*password:" { send "$password\r" }      
}
interact    
假设上面这个脚本叫auto_scp, 放在当前目录 则用法为./auto_scp 远程ip 远程用户名 远程密码 远程文件路径 本机目的路径
编码侠 2017-08-25
  • 打赏
  • 举报
回复
引用 楼主 u013066753 的回复:
写一个 shell脚本 拷贝另一个服务器上的 文件 到 我本机的文件夹里 登录另一个服务器需要密码
能帮写个例子吗
ipqtjmqj 2017-08-25
  • 打赏
  • 举报
回复
expect + scp
曹宇飞丶 2017-08-25
  • 打赏
  • 举报
回复
不如做个免密登陆,脚本就可以不用写明文密码了。 然后直接把你的拷贝命令堆在脚本里面就可以了。
自信男孩 2017-08-25
  • 打赏
  • 举报
回复
scp usrname@Ip:file path . 如果scp命令不能识别,可以先安装一下 SSL server和client 对于scp命令的详细命令,可以从网上搜搜

18,777

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧