linux服務(wù)器傳輸文件的方式有:1、使用scp傳輸,簡(jiǎn)單方便,支持限速參數(shù),安全性和可靠性高,但不支持排除目錄;2、使用rcp傳輸,需要把源主機(jī)加入到可信任主機(jī)列表中,否則無(wú)法傳輸文件;3、使用wget傳輸,支持限速參數(shù)和排除目錄,但參數(shù)較多,使用復(fù)雜;4、使用rsync傳輸,支持排除目錄、限速參數(shù)和本地復(fù)制,功能強(qiáng)大。
具體內(nèi)容如下:
1、scp
【優(yōu)點(diǎn)】簡(jiǎn)單方便,安全可靠;支持限速參數(shù)
【缺點(diǎn)】不支持排除目錄
【用法】scp就是secure copy,是用來(lái)進(jìn)行遠(yuǎn)程文件拷貝的。數(shù)據(jù)傳輸使用 ssh,并且和ssh 使用相同的認(rèn)證方式,提供相同的安全保證 。
命令格式:
scp [參數(shù)] <源地址(用戶名@ip地址或主機(jī)名)>:<文件路徑> <目的地址(用戶名 @ip 地址或主機(jī)名)>:<文件路徑>舉例:
scp /home/work/source.txt work@192.168.0.10:/home/work/ #把本地的source.txt文件拷貝到192.168.0.10機(jī)器上的/home/work目錄下
scp work@192.168.0.10:/home/work/source.txt /home/work/ #把192.168.0.10機(jī)器上的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機(jī)器上的source.txt文件拷貝到192.168.0.11機(jī)器的/home/work目錄下
scp -r /home/work/sourcedir work@192.168.0.10:/home/work/ #拷貝文件夾,加-r參數(shù)
scp -r /home/work/sourcedir work@www.myhost.com:/home/work/ #使用主機(jī)名
scp -r -v /home/work/sourcedir work@www.myhost.com:/home/work/ #顯示詳情,加-v參數(shù)
2、rcp
【概述】
目標(biāo)主機(jī)需要事先打開(kāi)rcp功能,并設(shè)置好rcp的權(quán)限:把源主機(jī)加入到可信任主機(jī)列表中,否則無(wú)法在源主機(jī)上使用rcp遠(yuǎn)程復(fù)制文件到目標(biāo)主機(jī)。
3、wget
【優(yōu)點(diǎn)】簡(jiǎn)單方便,支持排除目錄,支持限速參數(shù)
【缺點(diǎn)】只能從遠(yuǎn)程機(jī)器將文件或文件夾下載到本地,并且遠(yuǎn)程機(jī)器需要支持ftp服務(wù)(例如啟動(dòng)proftpd);參數(shù)較多,使用上比scp復(fù)雜
【用法】 wget是一個(gè)從網(wǎng)絡(luò)上自動(dòng)下載文件的自由工具,支持通過(guò)http、https、ftp三個(gè)最常見(jiàn)的tcp/ip協(xié)議下載,并可以使用http代理。
命令格式:
wget [參數(shù)] ftp://<目標(biāo)機(jī)器ip或主機(jī)名>/<文件的絕對(duì)路徑> #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 #使用主機(jī)名
wget -nh -p /home/work/ ftp://www.myhost.com//home/work/source.txt #指定本地保存路徑,使用參數(shù)“-p 路徑”或者“--directory-prefix=路徑”;-nh, --no-host-directories 不創(chuàng)建主機(jī)目錄
wget -r -l 0 -nh -p /home/work/ ftp://www.myhost.com//home/work/sourcedir #遞歸下載sourcedir目錄,使用參數(shù)-r;參數(shù)-l, --level=number 最大遞歸深度 (inf 或 0 代表無(wú)窮).
wget --cut-dirs=3 -r -l 0 -nh -p /home/work/ ftp://www.myhost.com//home/work/sourcedir #-參數(shù)-cut-dirs=number 忽略 number層遠(yuǎn)程目錄,本例中將myhost上的sourcedir目錄保存到本地的work目錄下。
wget --limit-rate=200k --cut-dirs=3 -r -l 0 -nh -p /home/work/ ftp://www.myhost.com//home/work/sourcedir #-參數(shù)--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參數(shù)
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 #參數(shù)-q表示安靜模式,無(wú)輸出;默認(rèn)是-v,冗余模式
4、rsync
【優(yōu)點(diǎn)】功能強(qiáng)大,操作類似scp,支持排除目錄,支持限速參數(shù);還支持本地復(fù)制。
【缺點(diǎn)】暫無(wú)
【用法】 rsync是類unix系統(tǒng)下的數(shù)據(jù)鏡像備份工具,從軟件的命名上就可以看出來(lái)了——remote sync。它的操作方式和scp和相似,但是比scp強(qiáng)大很多。使用雙冒號(hào)分割主機(jī)名和文件路徑時(shí),是使用rsync服務(wù)器,這里不做介紹。
命令格式:
rsync [參數(shù)] <源地址(用戶名@ip地址或主機(jī)名)>:<文件路徑> <目的地址(用戶名 @ip 地址或主機(jī)名)>:<文件路徑>
舉例:
rsync /home/work/source.txt work@192.168.0.10:/home/work/ #把本地的source.txt文件拷貝到192.168.0.10機(jī)器上的/home/work目錄下
rsync work@192.168.0.10:/home/work/source.txt /home/work/ #把192.168.0.10機(jī)器上的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機(jī)器上的source.txt文件拷貝到192.168.0.11機(jī)器的/home/work目錄下
rsync -r /home/work/sourcedir work@192.168.0.10:/home/work/ #拷貝文件夾,加-r參數(shù)
rsync -r /home/work/sourcedir work@www.myhost.com:/home/work/ #使用主機(jī)名
rsync -r -v /home/work/sourcedir work@www.myhost.com:/home/work/ #顯示詳情,加-v參數(shù)
rsync -r -v --exclude sourcedir/notinclude /home/work/sourcedir work@www.myhost.com:/home/work/ #排除子目錄,注意:--exclude后面的路徑不能為絕對(duì)路徑,必須為相對(duì)路徑才可以,否則匹配不上,就不會(huì)被排除掉。