< 返回新聞公共列表

SCP Linux命令:如何通過SSH將文件從遠程傳輸到本地?

發(fā)布時間:2023-06-25 15:21:37

當涉及到在Linux等操作系統(tǒng)中共享數據時,我們可以選擇多種命令來共享信息。下面,我們將重點討論SCP命令,如何

通過SSH將文件從遠程傳輸到本地?


SCP Linux命令:如何通過SSH將文件從遠程傳輸到本地?.png


一、什么是SCP命令?

SCP是安全復制協(xié)議的縮寫。它是一個命令行實用程序,允許用戶在兩個位置(通常是UNIX或Linux系統(tǒng)之間)之間安

全地復制文件和目錄。該協(xié)議確保文件傳輸經過加密,以防止任何有可疑意圖的人獲取敏感信息。簡而言之,我們可以

說SCP是cp( copy )命令的更安全選項。還需要注意的是,SCP通過SSH(安全外殼)連接使用加密,這可確保傳輸的數

據免受可疑攻擊。


二、SCP語法

就像終端中使用的任何其他命令一樣,SCP也有一種用于成功執(zhí)行的格式。通過理解語法,我們可以更輕松地寫下命令:

scp [OPTIONS] [[user@]src_host:]file1 [[user@]dest_host:]file2

scp-它初始化命令并確保安全shell就位。

OPTIONS-他們根據使用方式授予不同的權限。一些最常見的選項包括:

P(大寫)-指定與遠程主機建立連接的端口。

p(小寫)-保留時間戳以便于修改和訪問。

r -遞歸復制整個目錄

q -安靜地復制文件,不顯示進度消息,也稱為安靜模式。

C -用于在傳輸過程中壓縮數據。

src_host-文件的托管位置。源可以是客戶端或服務器,具體取決于文件的來源。

dest_host-文件將被復制到的位置。

由于我們正在處理文件傳輸,這意味著必須有不止一臺機器的參與才能使該過程成為可能。我們可以在以下情況下使用

SCP:

在同一臺機器上復制文件。

將文件從本地主機復制到遠程主機,反之亦然。

在兩個不同的遠程服務器之間復制文件。

此時,在使用任何SCP命令之前,需要準備好一些東西:

客戶端和服務器上都安裝了SSH。

對客戶端和服務器計算機的根訪問權限。


三、常用SCP命令

1、將文件從本地主機復制到遠程服務器

復制文件時,能夠將文件/數據從本地存儲傳輸到遠程服務器是非常重要的。使用SCP命令時,需要指定一些事情才能發(fā)生

這種情況。

我們必須指定文件的路徑作為源,并指定文件復制到的遠程主機路徑。

讓我們假設一個場景,我們有一個文件test.txt,我們需要將其復制到遠程服務器,我們的命令如下所示:

scp test.txt userbravo@destination:/location2

我們不限制可以復制的文件數量。假設我們位于桌面上名為web的文件夾中,其中有.php文件擴展名,并且需要將其復制

到遠程服務器主目錄。我們的命令將如下所示:

scp *.php userbravo@destination_host:/~/

*.php -復制當前指定文件夾中擴展名為.php的所有文件。

/~/ - 表示將它們復制到主目錄。

假設我們想復制一個名為test.txt的文件,并使用端口選項將其以不同的名稱保存在遠程服務器中。該命令將是:

scp -P 8080 test.txt userbravo@destination_host:/user/home/test2.txt

在此示例中,我們將文件test.txt從本地計算機復制到遠程計算機,并使用端口8080將其保存為test2.txt。

2、將文件從遠程復制到本地

理解這一點的更好方法是使用示例??紤]一個我們想要從遠程系統(tǒng)復制文件的場景。要復制文件,我們需要首先調用

SCP,然后是遠程用戶名@IP 地址、文件路徑。

如果不指定路徑,則在這種情況下假定默認為用戶的主目錄,這將遵循文件在本地存儲的路徑。語法:

scp <remote_username>@<IPorHost>:<PathToFile>   <LocalFileLocation>

假設我想從地址為192.168.1.100的遠程設備復制一個名為linuxcheatsheet的文件。

linuxcheatsheet文件存儲在kali用戶的主目錄中,我將驗證該用戶。因此,在冒號之后,我不需要指定路徑,因為它是

默認路徑,即主目錄,我只需鍵入文件名(“l(fā)inuxcheatsheet”)。然后,我通過鍵入一個點將當前目錄指定為存儲文

件的本地位置。

scp lary@192.168.1.100:linuxcheatsheet .

3、將文件從遠程主機復制到另一臺主機

在文件傳輸中使用SCP的優(yōu)點在于,它不僅允許本地計算機之間的連接,還允許您連接到遠程服務器。

假設我們想要將名為test.txt的文件復制到另一個遠程服務器,命令如下所示:

scp user1@host1.com:/files/test.txt user2@host2.com:/files

此命令將執(zhí)行的操作是從user1的文件夾中復制test.txt,并在user2 中創(chuàng)建它的副本,該副本仍在該文件夾中的

host2.com上運行。

4、復制多個文件

復制多個文件時,只需指定文件名作為源路徑即可。例如語法:

scp file1 file2 ... user@<ip_address_of_user>: Destination

假設我們想要復制文件 1、2、3 和 4。命令如下所示:

scp file1.txt file2.txt file3.txt file4.txt user1@host1.com:/home/user1/Desktop


總結要點:

1、為了能夠復制文件,我們必須具有源文件的讀取權限和目標系統(tǒng)的寫入權限。

2、SCP命令依賴SSH進行安全數據傳輸,這意味著它需要密碼才能在遠程系統(tǒng)上進行身份驗證。

3、復制具有相同名稱和位置的文件時要小心,因為SCP會在不警告您的情況下覆蓋它們。

4、為了能夠區(qū)分本地和遠程位置,請使用完整的冒號:。


/template/Home/Zkeys724/PC/Static