怎么复制远程服务器上的文件夹,Linux系统复制文件/文件夹到远程服务器
從一個服務器復制文件到另一個服務器,或者從本地到遠程復制是?Linux?管理員的日常任務之一。
我覺得不會有人不同意,因為無論在哪里這都是你的日常操作之一。有很多辦法都能處理這個任務,我們試著加以概括。你可以挑一個喜歡的方法。當然,看看其他命令也能在別的地方幫到你。
我已經在自己的環境下測試過所有的命令和腳本了,因此你可以直接用到日常工作當中。
通常大家都傾向 scp,因為它是文件復制的原生命令native command之一。但本文所列出的其它命令也很好用,建議你嘗試一下。
文件復制可以輕易地用以下四種方法。
scp:在網絡上的兩個主機之間復制文件,它使用 ssh 做文件傳輸,并使用相同的認證方式,具有相同的安全性。
rsync:是一個既快速又出眾的多功能文件復制工具。它能本地復制、通過遠程?shell?在其它主機之間復制,或者與遠程的 rsync 守護進程daemon 之間復制。
pscp:是一個并行復制文件到多個主機上的程序。它提供了諸多特性,例如為 scp 配置免密傳輸,保存輸出到文件,以及超時控制。
prsync:也是一個并行復制文件到多個主機上的程序。它也提供了諸多特性,例如為 ssh 配置免密傳輸,保存輸出到 文件,以及超時控制。
方式 1:如何在 Linux 上使用 scp 命令從本地系統向遠程系統復制文件/文件夾?
scp?命令可以讓我們從本地系統復制文件/文件夾到遠程系統上。
我會把 output.txt 文件從本地系統復制到 2g.CentOS.com 遠程系統的 /opt/backup 文件夾下。
# scp output.txt root@2g.CentOS.com:/opt/backup
output.txt 100% 2468 2.4KB/s 00:00
從本地系統復制兩個文件 output.txt 和 passwd-up.sh 到遠程系統 2g.CentOs.com 的 /opt/backup 文件夾下。
# scp output.txt passwd-up.sh root@2g.CentOS.com:/opt/backup
output.txt 100% 2468 2.4KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
從本地系統復制?shell-script 文件夾到遠程系統 2g.CentOs.com 的 /opt/back 文件夾下。
這會連同shell-script 文件夾下所有的文件一同復制到/opt/back 下。
# scp -r /home/daygeek/2g/shell-script/ root@:/opt/backup/
output.txt 100% 2468 2.4KB/s 00:00
ovh.sh 100% 76 0.1KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
passwd-up1.sh 100% 7 0.0KB/s 00:00
server-list.txt 100% 23 0.0KB/s 00:00
方式 2:如何在 Linux 上使用 scp 命令和 Shell?腳本復制文件/文件夾到多個遠程系統上?
如果你想復制同一個文件到多個遠程服務器上,那就需要創建一個如下面那樣的小 shell 腳本。
并且,需要將服務器添加進 server-list.txt 文件。確保添加成功后,每個服務器應當單獨一行。
最終,你想要的腳本就像下面這樣:
# file-copy.sh
#!/bin/sh
for server in `more server-list.txt`
do
scp /home/daygeek/2g/shell-script/output.txt root@$server:/opt/backup
done
完成之后,給 file-copy.sh 文件設置可執行權限。
# chmod +x file-copy.sh
最后運行腳本完成復制。
# ./file-copy.sh
output.txt 100% 2468 2.4KB/s 00:00
output.txt 100% 2468 2.4KB/s 00:00
使用下面的腳本可以復制多個文件到多個遠程服務器上。
# file-copy.sh
#!/bin/sh
for server in `more server-list.txt`
do
scp /home/daygeek/2g/shell-script/output.txt passwd-up.sh root@$server:/opt/backup
done
下面結果顯示所有的兩個文件都復制到兩個服務器上。
# ./file-cp.sh
output.txt 100% 2468 2.4KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
output.txt 100% 2468 2.4KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
使用下面的腳本遞歸地復制文件夾到多個遠程服務器上。
# file-copy.sh
#!/bin/sh
for server in `more server-list.txt`
do
scp -r /home/daygeek/2g/shell-script/ root@$server:/opt/backup
done
上述腳本的輸出。
# ./file-cp.sh
output.txt 100% 2468 2.4KB/s 00:00
ovh.sh 100% 76 0.1KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
passwd-up1.sh 100% 7 0.0KB/s 00:00
server-list.txt 100% 23 0.0KB/s 00:00
output.txt 100% 2468 2.4KB/s 00:00
ovh.sh 100% 76 0.1KB/s 00:00
passwd-up.sh 100% 877 0.9KB/s 00:00
passwd-up1.sh 100% 7 0.0KB/s 00:00
server-list.txt 100% 23 0.0KB/s 00:00
方式 3:如何在 Linux 上使用 pscp 命令復制文件/文件夾到多個遠程系統上?
pscp命令可以直接讓我們復制文件到多個遠程服務器上。
使用下面的 pscp 命令復制單個文件到遠程服務器。
# pscp.pssh -H 2g.CentOS.com /home/daygeek/2g/shell-script/output.txt /opt/backup
[1] 18:46:11 [SUCCESS] 2g.CentOS.com
使用下面的 pscp 命令復制多個文件到遠程服務器。
# pscp.pssh -H 2g.CentOS.com /home/daygeek/2g/shell-script/output.txt ovh.sh /opt/backup
[1] 18:47:48 [SUCCESS] 2g.CentOS.com
使用下面的 pscp 命令遞歸地復制整個文件夾到遠程服務器。
# pscp.pssh -H 2g.CentOS.com -r /home/daygeek/2g/shell-script/ /opt/backup
[1] 18:48:46 [SUCCESS] 2g.CentOS.com
使用下面的 pscp 命令使用下面的命令復制單個文件到多個遠程服務器。
# pscp.pssh -h server-list.txt /home/daygeek/2g/shell-script/output.txt /opt/backup
[1] 18:49:48 [SUCCESS] 2g.CentOS.com
[2] 18:49:48 [SUCCESS] 2g.Debian.com
使用下面的 pscp 命令復制多個文件到多個遠程服務器。
# pscp.pssh -h server-list.txt /home/daygeek/2g/shell-script/output.txt passwd-up.sh /opt/backup
[1] 18:50:30 [SUCCESS] 2g.Debian.com
[2] 18:50:30 [SUCCESS] 2g.CentOS.com
使用下面的命令遞歸地復制文件夾到多個遠程服務器。
# pscp.pssh -h server-list.txt -r /home/daygeek/2g/shell-script/ /opt/backup
[1] 18:51:31 [SUCCESS] 2g.Debian.com
[2] 18:51:31 [SUCCESS] 2g.CentOS.com
linux 系統獲得當前文件夾下存在的所有文件 scandir函數和struct dirent **namelist結構體[轉]
linux 系統獲得當前文件夾下存在的所有文件 scandir函數和struct dirent **namelist結構體 1.引用頭文件#include struct ...
linux系統下修改文件夾目錄權限
linux系統下修改文件夾目錄權限 文件夾權限問題 Linux.Fedora.Ubuntu修改文件.文件夾權限的方法差不多.很多人開始接觸Linux時都很頭痛Linux的文件權限問題.這里告訴大家如何 ...
關于Linux系統清理/tmp/文件夾的原理
轉自:http://www.opsers.org/base/clean-up-on-the-linux-system-tmp-folder-you-may-want-to-know.html 我們知道 ...
Linux 下復制整個文件夾的命令
在 Linux 下復制整個文件夾,包括它的子文件夾及其隱藏文件的方法是: cp -r /etc/skel /home/user 或者 mkdir /home/ cp - ...
使用WinSCP在Windows和Linux系統之間傳輸文件
小梅哥編寫,未經許可,嚴禁用于任何商業用途 2018年6月30日 在日常SoC開發中,我們經常需要在Windows和Linux系統之間傳輸文件,例如在Windows系統上的DS-5集成開發環境中編寫好 ...
linux系統中的文件權限詳解(轉)
一.在中介紹了通過ls指令來查看文件的屬性,具體如下: [命令] letuknowit@ubuntu:/$ cd /tmp letuknowit@ubu ...
linux系統加快大文件的寫入速度
linux系統加快大文件的寫入速度 setvbuf進行優化內存IO
Linux系統下查找文件的方法
Linux系統下查找文件的方法 作者:Vashon 時間:20150419 方法一.在當前目錄里查找所有名為以 java 開頭的文件: find ./ -name "java*" ...
linux系統下,11款常見遠程桌面控制軟件
linux系統下,11款常見遠程桌面控制軟件 一. Grdc 它是一個用GTK+編寫的,適用于gnome桌面環境的遠程桌面訪問軟件.看圖: 常見功能: 1.提供全屏,窗口化的遠程控制.支持高分辨率下的 ...
隨機推薦
大前端學習筆記整理【六】this關鍵字詳解
前言 在上一篇博客里我總結了下辨認this指向的四種方式,但是有師兄拋出一個問題來,我發現那些this的指向并不能說明更復雜的情況,先看下這段代碼 var a = { name: 'a', getNa ...
hibernate HQL和Criteria
package com.test; import java.util.Date; import java.util.List; import org.hibernate.Query; import o ...
genymotion和eclipse連接問題,一直出錯
前兩天重裝系統,但是在運行android代碼的時候遇到了這樣的問題 The connection to adb is down,and a server error has occured. You ...
利用range() 控制循環
s = ['a','b','c','d','e'] for i in range(len(s)):...???? if i < len(s)-1:...???????? print s[i] a ...
php讀取excel文件 更新修改excel
php讀取excel文件示例,還有更新修改功能. 代碼: //模板存放目錄 $dir = $DOCUMENT_ROOT.'/backoffice/admin/oemcheck/'; $template ...
javascript 路線整理
前端開發很重要,編寫腳本也不容易. 總結我以前的前端學習經歷,基本是一團亂麻:css+javascript是在大三自學的,當時自己做課程設計,逼著自己在一個月之內,寫了一個半成品的j2ee網站.當時, ...
貼近瀏覽器窗口右側的jqueryui dialog快速從左側調整大小時對話框大小設置不準確的問題
之前在做兩個相同的頁面的事件同步時發現了這個問題,現在把它記錄下來. 一.問題描述 頁面中的jqueryui對話框,如果把它拖動到靠近瀏覽器窗口右側邊緣,并快速從對話框左側調整對話框窗口大小時,對話框 ...
Matlab中數據的存儲方式
簡介 MATLAB提供了豐富的算法以及一個易于操作的語言,給算法研發工作者提供了很多便利.然而MATLAB在執行某些任務的時候,執行效率偏低,測試較大任務量時可能會引起較長時間的等待.未解決這個問題, ...
JAVA實現等腰三角形
class Triangle { public static void main(String[] args) { for(int a=0; b<5; a++)//這個代表只有四行 { for( ...
CloudStack 全局參數設置
mem.overprovisioning.factor 內存超分參數 cpu.overprovisioning.factor cpu超分參數
總結
以上是生活随笔為你收集整理的怎么复制远程服务器上的文件夹,Linux系统复制文件/文件夹到远程服务器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: win7系统服务器环境配置,window
- 下一篇: linux 其他常用命令