本文為大家分享了linux服務器之間傳輸文件的四種方式,供大家參考,具體內容如下
1. scp
【優點】簡單方便,安全可靠;支持限速參數
【缺點】不支持排除目錄
【用法】
scp就是secure copy,是用來進行遠程文件拷貝的。數據傳輸使用 ssh,并且和ssh 使用相同的認證方式,提供相同的安全保證 。
命令格式:
scp [參數] <源地址(用戶名@IP地址或主機名)>:<文件路徑> <目的地址(用戶名 @IP 地址或主機名)>:<文件路徑> 舉例: scp /home/work/source.txt work@192.168.0.10:/home/work/ #把本地的source.txt文件拷貝到192.168.0.10機器上的/home/work目錄下 scp work@192.168.0.10:/home/work/source.txt /home/work/ #把192.168.0.10機器上的source.txt文件拷貝到本地的/home/work目錄下 scp work@192.168.0.10:/home/work/source.txt work@192.168.0.11:/home/work/ #把192.168.0.10機器上的source.txt文件拷貝到192.168.0.11機器的/home/work目錄下scp -r /home/work/sourcedir work@192.168.0.10:/home/work/ #拷貝文件夾,加-r參數 scp -r /home/work/sourcedir work@www.myhost.com:/home/work/ #使用主機名 scp -r -v /home/work/sourcedir work@www.myhost.com:/home/work/ #顯示詳情,加-v參數
2. rcp
【概述】
目標主機需要事先打開rcp功能,并設置好rcp的權限:把源主機加入到可信任主機列表中,否則無法在源主機上使用rcp遠程復制文件到目標主機。
3. wget
【優點】簡單方便,支持排除目錄,支持限速參數
【缺點】只能從遠程機器將文件或文件夾下載到本地,并且遠程機器需要支持ftp服務(例如啟動proftpd);參數較多,使用上比scp復雜
【用法】
wget是一個從網絡上自動下載文件的自由工具,支持通過HTTP、HTTPS、FTP三個最常見的TCP/IP協議下載,并可以使用HTTP代理。
命令格式:
wget [參數] ftp://<目標機器ip或主機名>/<文件的絕對路徑> #proftpd格式
舉例:
wget ftp://192.168.0.10//home/work/source.txt #從192.168.0.10上拷貝文件夾source.txt wget ftp://www.myhost.com//home/work/source.txt #使用主機名 wget -nH -P /home/work/ ftp://www.myhost.com//home/work/source.txt #指定本地保存路徑,使用參數“-P 路徑”或者“--directory-prefix=路徑”;-nH, --no-host-directories 不創建主機目錄 wget -r -l 0 -nH -P /home/work/ ftp://www.myhost.com//home/work/sourcedir #遞歸下載sourcedir目錄,使用參數-r;參數-l, --level=NUMBER 最大遞歸深度 (inf 或 0 代表無窮). wget --cut-dirs=3 -r -l 0 -nH -P /home/work/ ftp://www.myhost.com//home/work/sourcedir #-參數-cut-dirs=NUMBER 忽略 NUMBER層遠程目錄,本例中將myhost上的sourcedir目錄保存到本地的work目錄下。 wget --limit-rate=200k --cut-dirs=3 -r -l 0 -nH -P /home/work/ ftp://www.myhost.com//home/work/sourcedir #-參數--limit-rate=RATE 限定下載輸率 wget --limit-rate=200k --cut-dirs=3 -r -l 0 -nH -P /home/work/ -X /home/work/sourcedir/notincludedir ftp://www.myhost.com//home/work/sourcedir #排除路徑使用-X參數 wget -q --limit-rate=200k --cut-dirs=3 -r -l 0 -nH -P /home/work/ -X /home/work/sourcedir/notincludedir ftp://www.myhost.com//home/work/sourcedir #參數-q表示安靜模式,無輸出;默認是-v,冗余模式
4. rsync
【優點】功能強大,操作類似scp,支持排除目錄,支持限速參數;還支持本地復制。
【缺點】暫無
【用法】
rsync是類unix系統下的數據鏡像備份工具,從軟件的命名上就可以看出來了——remote sync。它的操作方式和scp和相似,但是比scp強大很多。使用雙冒號分割主機名和文件路徑時,是使用rsync服務器,這里不做介紹。
命令格式:
rsync [參數] <源地址(用戶名@IP地址或主機名)>:<文件路徑> <目的地址(用戶名 @IP 地址或主機名)>:<文件路徑>
舉例:
rsync /home/work/source.txt work@192.168.0.10:/home/work/ #把本地的source.txt文件拷貝到192.168.0.10機器上的/home/work目錄下 rsync work@192.168.0.10:/home/work/source.txt /home/work/ #把192.168.0.10機器上的source.txt文件拷貝到本地的/home/work目錄下 rsync work@192.168.0.10:/home/work/source.txt work@192.168.0.11:/home/work/ #把192.168.0.10機器上的source.txt文件拷貝到192.168.0.11機器的/home/work目錄下 rsync -r /home/work/sourcedir work@192.168.0.10:/home/work/ #拷貝文件夾,加-r參數 rsync -r /home/work/sourcedir work@www.myhost.com:/home/work/ #使用主機名 rsync -r -v /home/work/sourcedir work@www.myhost.com:/home/work/ #顯示詳情,加-v參數 rsync -r -v --exclude sourcedir/notinclude /home/work/sourcedir work@www.myhost.com:/home/work/ #排除子目錄,注意:--exclude后面的路徑不能為絕對路徑,必須為相對路徑才可以,否則匹配不上,就不會被排除掉。
以上就是本文的全部內容,希望對大家的學習有所幫助。