Linux命令 rcp - 使在兩臺(tái)Linux主機(jī)之間的文件復(fù)制操作更簡(jiǎn)單

2022-03-18 17:51 更新

rcp

使在兩臺(tái)Linux主機(jī)之間的文件復(fù)制操作更簡(jiǎn)單

補(bǔ)充說明

rcp命令 使在兩臺(tái)Linux主機(jī)之間的文件復(fù)制操作更簡(jiǎn)單。通過適當(dāng)?shù)呐渲?,在兩臺(tái)Linux主機(jī)之間復(fù)制文件而無需輸入密碼,就像本地文件復(fù)制一樣簡(jiǎn)單。

語法

rcp(選項(xiàng))(參數(shù))

選項(xiàng)

-p:保留源文件或目錄的屬性,包括擁有者、所屬群組、權(quán)限與時(shí)間;
-r:遞歸處理,將指定目錄下的文件與子目錄一并處理;
-x:加密兩臺(tái)Linux主機(jī)間傳送的所有信息。
-D:指定遠(yuǎn)程服務(wù)器的端口號(hào)。

同名用戶的主目錄。如果沒有給出遠(yuǎn)程用戶名,就使用當(dāng)前用戶名。如果遠(yuǎn)程機(jī)上的路徑包含特殊shell字符,需要用反斜線\\、雙引號(hào)""或單引號(hào)''括起來,使所有的shell元字符都能被遠(yuǎn)程地解釋。需要說明的是,rcp不提示輸入口令,它通過rsh命令來執(zhí)行拷貝。

directory 每個(gè)文件或目錄參數(shù)既可以是遠(yuǎn)程文件名也可以是本地文件名。遠(yuǎn)程文件名具有如下形式rname@rhost:path,其中rname是遠(yuǎn)程用戶名,rhost是遠(yuǎn)程計(jì)算機(jī)名,path是這個(gè)文件的路徑。

參數(shù)

源文件:指定要復(fù)制的源文件。源文件可以有多個(gè)。

實(shí)例

rcp命令使用條件

如果系統(tǒng)中有/etc/hosts文件,系統(tǒng)管理員應(yīng)確保該文件包含要與之進(jìn)行通信的遠(yuǎn)程主機(jī)的項(xiàng)。配置過程:

只對(duì)root用戶生效

1、在雙方root用戶根目錄下建立rhosts文件,并將雙方的hostname加進(jìn)去。在此之前應(yīng)在雙方的/etc/hosts文件中加入對(duì)方的ip和hostname2、把rsh服務(wù)啟動(dòng)起來,redhat默認(rèn)是不啟動(dòng)的。方法:用執(zhí)行ntsysv命令,在rsh選項(xiàng)前用空格鍵選中,確定退出。然后執(zhí)行service xinetd restart即可。3、到/etc/pam.d/目錄下,把rsh文件中的auth required /lib/security/pam_securetty.so一行用“#”注釋掉即可。(只有注釋掉這一行,才能用root用戶登錄)

將當(dāng)前目錄下的 test1 復(fù)制到名為 webserver1 的遠(yuǎn)程系統(tǒng):

rcp test1 webserver1:/home/root/test3

在這種情況下,test1 被復(fù)制到遠(yuǎn)程子目錄 test3下,名稱仍為 test1 。如果僅提供了遠(yuǎn)程主機(jī)名,rcp 將把 test1 復(fù)制到遠(yuǎn)程主目錄下,名稱仍為 test1 。

還可以在目的目錄中包含文件名。例如,將文件復(fù)制到名為 webserver1的系統(tǒng)中:

rcp test1 webserver1:/home/root/test3

在這種情況下,將 test1 復(fù)制到遠(yuǎn)程目錄root 下并將其命名為 test3。

從遠(yuǎn)程系統(tǒng)復(fù)制文件:要將遠(yuǎn)程系統(tǒng)中的文件復(fù)制到本地目錄下:

rcp remote_hostname:remote_file local_fileEnter

將遠(yuǎn)程系統(tǒng) webserver1中的 test2 復(fù)制到當(dāng)前目錄:

rcp webserver1:/home/root/test2 .Enter

.是“當(dāng)前目錄”的簡(jiǎn)寫形式。在這種情況下,遠(yuǎn)程目錄中的 test2 被復(fù)制到當(dāng)前目錄下,名稱仍為 test2 。

如果希望用新名稱復(fù)制文件,請(qǐng)?zhí)峁┠繕?biāo)文件名。如果希望將 test2 復(fù)制到本地系統(tǒng)中的其他目錄下,請(qǐng)使用以下絕對(duì)或相對(duì)路徑名:

rcp webserver1:/home/root/test2 otherdir/ Enter

或者,如果希望用其他文件名將文件復(fù)制到其他目錄下:

rcp webserver1:/home/root/test2 otherdir/otherfile Enter

將目錄復(fù)制到遠(yuǎn)程系統(tǒng):

要將本地目錄及其文件和子目錄復(fù)制到遠(yuǎn)程系統(tǒng),請(qǐng)同時(shí)使用 rcp 和 -r(遞歸)選項(xiàng)。

rcp -r local_dir remote_hostname:remote_dir Enter

如果當(dāng)前目錄下沒有 local_dir,則除本地目錄名外,還需要提供相對(duì)路徑名(自當(dāng)前目錄開始)或絕對(duì)路徑名(自 / 頂級(jí)目錄開始)。另外,如果主目錄下沒有 remote_dir,則 remote_dir 將需要一個(gè)相對(duì)路徑(自主目錄開始)或絕對(duì)路徑(自 / 開始)。

要將名為 work 的子目錄完整地復(fù)制到 webserver1遠(yuǎn)程計(jì)算機(jī)中的主目錄下名為 products 的目錄,請(qǐng)鍵入以下內(nèi)容:

rcp -r work webserver1:/home/root/products Enter

此命令在webserver1:/home/root/products下創(chuàng)建名為 work 的目錄及其全部?jī)?nèi)容(假定/home/root/products已存在于 webserver1中)。

本示例假定用戶處于包含 work 的本地目錄下。否則,必須提供該目錄的相對(duì)或絕對(duì)路徑,如/home/root/work。

從遠(yuǎn)程系統(tǒng)復(fù)制目錄:

要將遠(yuǎn)程目錄及其所有文件和子目錄復(fù)制到本地目錄,請(qǐng)?jiān)谝韵抡Z法中使用 rcp 和 -r(遞歸)選項(xiàng)。

rcpr remote_hostname:remote_dir local_dir Enter

要將名為 work 的遠(yuǎn)程目錄復(fù)制到當(dāng)前目錄,請(qǐng)鍵入以下內(nèi)容:

rcp –r webserver1:/home/root/work .Enter

.表示當(dāng)前目錄。將在此目錄下創(chuàng)建 work 目錄。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)