返回顶部
首页 > 资讯 > 操作系统 >两个linux服务器间复制文件方式
  • 863
分享到

两个linux服务器间复制文件方式

linux服务器服务器复制文件linux复制文件 2023-04-28 10:04:47 863人浏览 独家记忆
摘要

目录两个linux服务器间复制文件从本地服务器复制到远程服务器 从远程服务器复制到本地服务器linux跨服务器复制文件(scp含脚本批量复制)1.纯命令复制方式2. 脚本方式批量分发总结两个linux服务器间复

目录
  • 两个linux服务器间复制文件
    • 从本地服务器复制到远程服务器 
    • 从远程服务器复制到本地服务器
  • linux跨服务器复制文件(scp含脚本批量复制)
    • 1.纯命令复制方式
    • 2. 脚本方式批量分发
  • 总结

    两个linux服务器间复制文件

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器。

    1、命令格式:

    scp [参数] [原路径] [目标路径]

    2、命令实例:

    从本地服务器复制到远程服务器 

    (1) 复制文件:

    复制到文件夹,不修改文件名,执行命令后需要输入密码

    源文件    目标服务器用户名    目标ip  目标文件夹(/file)

    scp local_file remote_username@remote_ip:remote_folder 

    复制到文件夹并指定文件名,执行命令后需要输入密码

    remote_file(/file/test.txt)
    scp local_file remote_username@remote_ip:remote_file 

    复制到文件夹,不指定用户,执行命令后需要输入用户名、密码

    scp local_file remote_ip:remote_folder 

    复制到文件夹并指定文件名,执行命令后需要输入用户名、密码

    scp local_file remote_ip:remote_file 

    (2) 复制目录:  

    -r表示递归,复制整个目录及目录下文件到文件夹,执行命令后需要输入密码

    scp -r local_folder remote_username@remote_ip:remote_folder 

    -r表示递归,复制整个目录及目录下文件到文件夹,执行命令后需要输入用户名、密码

    scp -r local_folder remote_ip:remote_folder 

    从远程服务器复制到本地服务器

    从远程复制到本地的scp命令与上面的命令雷同,只要将从本地复制到远程的命令后面2个参数互换顺序就行了。

    远程服务器用户名    远程ip       远程文件目录   本地目录

    scp remote_username@remote_ip:remote_folder local_folder

    同理也可复制文件/文件夹  目标文件也可指定文件名

    linux跨服务器复制文件(scp含脚本批量复制)

    作为一名开发,也需要干运维的工作,有时需要将一个文件(jar包)批量拷贝到多台 Linux 服务器上。

    如果逐台scp命令拷贝,不仅需要更换ip,每次还需要输入机器密码,效率比较低下。

    为提高效率,通过脚本方式实现将文件从一台 Linux 主机批量拷贝到多台服务器,以下为实现方法。

    1.纯命令复制方式

    1.1 单个文件复制

    scp /home/xxyy/manageWEB/xxyy-web.jar xxyy@192.168.1.180:/home/xxyy/manageweb/bak

    在这里插入图片描述

    1.2 文件夹复制

    加上 -r 即可

    scp -r demoDir/ root@192.168.0.180:/opt/soft/

    2. 脚本方式批量分发

    2.1 创建脚本文件 scp.sh

    #!/bin/bash
    echo "拷贝情况如下:" > test.log
    n=`cat demoIplist.txt | wc -l` #分发的ip数量
    fileName=demo-web.jar #分发文件名
    echo "即将分发的文件:$fileName"
    for ((i=1; i <= $n; i++))
    do
    passwd=`cat demoPassWord.txt | head -$i | tail -1`
    ip=`cat demoIplist.txt | head -$i | tail -1`
    echo $ip
    ##自动交互
    expect <<EOF
    spawn scp $fileName xxyyzz@$ip:/home/xxyyzz/manageweb/bak/
    expect "yes/no" {send "yes\n;exp_untinue"}
    expect "password" {send "$passwd\n"}
    expect eof
    EOF
    if [ $? -eq 0 ];then
    echo "$ip:成功" >>demoScpLog.log
    echo "$ip:成功"
    else
    echo "$ip:失败" >>demoScpLog.log
    echo "$ip:失败"
    fi 
    done
    echo "复制完成!!!"

    脚本解析:

    • 1.循环执行scp命令
    • 2.循环切换demoIplist.txt中的目标ip
    • 3.循环输入demoPassword.txt中的密码
    • 4.传输成功或失败,均分别打印到控制台和日志

    2.2 创建分发目标机器ip文件 demoIplist.txt

    脚本循环读取时,会受换行符影响,需要注意删除多余空行。

    192.168.1.180
    192.168.1.179

    2.3 创建分发目标机器password文件 demoPassword.txt

    由于生产上,不能设置免密传输,所以需要设置密码。另外,如果密码含有特殊字符,脚本将执行失败。

    lC1yM51Dqxu7eq5Y
    13mUx1Uq6buG45mJ

    2.4 执行.sh文件

    打印如下:

    在这里插入图片描述

    如上,即为脚本分发文件的方式。另外也可将文件名设置成文件可编辑的方式,会更加灵活,此处文件名固定方式就够用了。

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

    --结束END--

    本文标题: 两个linux服务器间复制文件方式

    本文链接: https://lsjlt.com/news/201923.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • 两个linux服务器间复制文件方式
      目录两个linux服务器间复制文件从本地服务器复制到远程服务器 从远程服务器复制到本地服务器linux跨服务器复制文件(scp含脚本批量复制)1.纯命令复制方式2. 脚本方式批量分发总结两个linux服务器间复...
      99+
      2023-04-28
      linux服务器 服务器复制文件 linux复制文件
    • linux跨服务器复制文件方式(scp含脚本批量复制)
      目录前言1.纯命令复制方式1.1 单个文件复制1.2 文件夹复制2. 脚本方式批量分发2.1 创建脚本文件 scp.sh2.2 创建分发目标机器ip文件 demoIplist.txt2.3 创建分发目标机器passwor...
      99+
      2023-03-31
      linux复制文件 scp批量复制 跨服务器复制文件
    • 两个云服务器之间的连接方式
      两个云服务器之间的连接方式可以根据云服务提供商的不同而有所不同。以下是一些常见的云服务器配置和连接方式: 公共云(Public Cloud) 公共云提供商通常会提供两种类型的服务器:集群服务器和分布式服务器。其中,集群服务器负责处理大...
      99+
      2023-10-26
      两个 方式 服务器
    • 两台linux服务器之间传输文件的几种方法
      打开powershell, 开始连接服务器 ssh root@192.168.7.204 然后输入密码后就进来了,进入之后找到你要传输文件的位置 接下来我要将这个包传到另一个环境中去,有以...
      99+
      2023-09-03
      linux Powered by 金山文档
    • 两个云服务器之间的连接方式是
      两个云服务器之间的连接方式可以采用以下几种方式: VPN连接:使用VPN连接可以确保云服务器不受第三方服务提供商的干扰,可以在不同地理位置和网络环境下使用多个云服务器。使用VPN连接需要购买相应的服务,并且需要一定的技术知识和设备资源。...
      99+
      2023-10-27
      两个 方式 服务器
    • linux怎么跨服务器复制文件
      本文小编为大家详细介绍“linux怎么跨服务器复制文件”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux怎么跨服务器复制文件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。...
      99+
      2023-04-06
      linux 服务器
    • Linux在两个服务器直接传文件的操作方法
      目录1.当从一个远程服务器传输文件到另一个服务器上(你想传给别人文件)2.在本地服务器,从另一个服务器中获取文件(你想从别人获取文件)scp是secure copy的简写, 是 linux 系统下基于 ssh 登陆进行安...
      99+
      2022-08-08
      Linux服务器传文件 Linux两个服务器直接传文件
    • linux怎么复制多个文件
      要复制多个文件,可以使用`cp`命令结合通配符。以下是一些示例:1. 复制当前目录下的所有文件到目标目录:cp * /目标目录/2....
      99+
      2023-10-30
      linux
    • linux如何复制一个文件
      这篇文章将为大家详细讲解有关linux如何复制一个文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。如何复制 Linux 文件 引言 复制文件是 Linux 系统中一项常见任务,可以通过多种命令行实用工具...
      99+
      2024-04-02
    • shell两个文件去重的方式
      本篇内容主要讲解“shell两个文件去重的方式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“shell两个文件去重的方式”吧!前言大家都知道shell在文本处理上确有极大优势,比如多文本合并、去...
      99+
      2023-06-09
    • 两个云服务器之间的连接方式是什么
      两个云服务器之间的连接方式可能包括: 数据库连接:两个云服务器可以通过数据库连接建立连接,用于访问数据和执行各种操作,如创建、删除或更新数据。 文件传输:两个云服务器可以使用文件传输服务(如S3 Streaming Service或S4...
      99+
      2023-10-27
      两个 方式 服务器
    • 两个云服务器之间的连接方式有哪些
      云服务器的连接方式有很多,以下是一些常见的连接方式: WAN连接 通过路由器或者网关连接到云服务器的WAN端口,可以实现云服务器与其他云服务提供商之间的连接。这种连接方式适用于不同的云服务提供商,但对于一些大型的云服务提供商来说,这种...
      99+
      2023-10-28
      两个 方式 服务器
    • Linux两台服务器之间传输文件和文件夹操作步骤
      今天处理一个项目要迁移的问题,突然发现这么多图片怎么移过去,可能第一时间想到的是先从这台服务器下载下来,然后再上传到另外一台服务器上面去,这个方法确实是可行,但是实在是太费时间了,今天我就教大家怎么快速的在两台服务器之间...
      99+
      2022-06-04
      Linux 服务器 传输文件
    • linux如何复制文件夹到另一个文件夹
      本文小编为大家详细介绍“linux如何复制文件夹到另一个文件夹”,内容详细,步骤清晰,细节处理妥当,希望这篇“linux如何复制文件夹到另一个文件夹”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起...
      99+
      2023-01-05
      linux
    • java复制文件的4种方式
       1. 使用FileStreams复制  这是最经典的方式将一个文件的内容复制到另一个文件中。 使用FileInputStream读取文件A的字节,使用FileOutputStream写入到文件B。  这是第一个方法的代码:  privat...
      99+
      2023-06-03
    • 两个云服务器之间的连接方法
      以下是两个云服务器之间的主要通信方法: DNS解析:将请求发送到对应的云服务器上。 HTTP:客户端向服务器提出请求,服务器返回响应。 GET和POST:发送请求并接收响应。 CONNECT命令:向服务器发送指令,例如"GET http...
      99+
      2023-10-26
      两个 服务器 方法
    • 两台Linux间传输文件的方法是什么
      本篇内容主要讲解“两台Linux间传输文件的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“两台Linux间传输文件的方法是什么”吧!两台Linux系统之间要想传输文件可以采用的方式有很...
      99+
      2023-06-28
    • linux怎么一次性复制多个文件
      在Linux系统中,可以使用cp命令来一次性复制多个文件。例如,要复制多个文件到另一个目录,可以使用以下命令: cp file1 f...
      99+
      2024-03-07
      linux
    • Linux系统如何复制文件及文件夹到远程服务器
      Linux系统如何复制文件及文件夹到远程服务器,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。从一个服务器复制文件到另一个服务器,或者从本地到远程复制是 Linux&n...
      99+
      2023-06-05
    • C++两个cpp文件间如何进行各自函数的调用方式
      目录两个cpp文件间如何进行各自函数的调用前提问题描述解决方法C++分文件调用自己写的函数创建.h的头文件创建.cpp的源文件在头文件写函数的声明在源文件中写函数的定义(内容)在任意...
      99+
      2023-02-23
      C++函数的调用 cpp文件函数的调用 C++函数
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作