如何在Linux中使用FTP命令傳輸文件

FTP(文件傳輸協議)是用於在遠程網絡之間傳輸文件的標準網絡協議。

在本教程中,我們將通過實際示例向您展示如何在Linux上使用ftp命令。

在大多數情況下,您將使用桌面FTP客戶端連接到遠程服務器並上傳或下載文件。 但是,命令 ftp 當您在沒有GUI的服務器上工作並且想要通過FTP或從遠程服務器傳輸文件時,此功能很有用。

通過ftp傳輸數據時,兩個連接均未加密。 為了安全地傳輸數據,請使用SFTP協議。

為了能夠複製文件,您必須至少具有對源文件的讀取權限和對目標系統的寫入權限。

傳輸大文件時,建議在屏幕或tmux會話中運行FTP命令。

運行命令的目錄 ftp 到本地工作目錄。

  1. 使用以下命令打開與遠程系統的FTP連接 ftp 在遠程服務器上,鍵入IP地址或域名:
    ftp 192.168.42.77

  2. 如果建立連接,將出現一條確認消息,並提示您輸入FTP用戶名,在本示例中為FTP用戶名 andreyex:
    220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
    220-You are user number 1 of 50 allowed.
    220-Local time is now 21:35. Server port: 21.
    220-This is a private system - No anonymous login
    220-IPv6 connections are also welcome on this server.
    220 You will be disconnected after 15 minutes of inactivity.
    Name (192.168.42.77:localuser): andreyex

    根據遠程服務器上運行的FTP服務,可能會出現不同的確認消息。

  3. 輸入用戶名後,將提示您輸入密碼:
    Password: 

  4. 如果密碼正確,則遠程服務器將顯示確認消息和提示 ftp>
    230 OK. Current restricted directory is /
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp>

    複製

如果您要訪問的FTP服務器接受匿名FTP帳戶,並且您想以匿名用戶身份登錄,請使用 anonymous 作為用戶名,您的電子郵件地址作為密碼。

許多FTP命令與您在Linux Shell命令行中輸入的命令相似或相同。

以下是一些最常見的FTP命令

  • help 或者 ? -所有可用的FTP命令列表
  • cd -更改遠程計算機上的目錄
  • lcd -更改本地計算機上的目錄
  • ls -當前遠程目錄中的文件名和目錄列表
  • mkdir -在當前遠程目錄中創建一個新目錄
  • pwd -在遠程計算機上打印當前工作目錄
  • delete -刪除當前遠程目錄中的文件
  • rmdir-刪除當前遠程目錄中的目錄
  • get -將一個文件從遠程計算機複製到本地計算機
  • mget -將多個文件從遠程計算機複製到本地計算機
  • put -將一個文件從本地計算機複製到遠程
  • mput -將一個文件從本地計算機複製到遠程

登錄後,將顯示當前工作目錄-這是遠程用戶的主目錄。

使用命令上傳文件時 ftp,文件將被上傳到您鍵入命令的目錄中 ftp

如果要將文件上傳到其他本地目錄,請使用以下命令切換到該目錄 lcd

假設我們要將文件下載到目錄中 ~/ftp_downloads

lcd ~/ftp_downloads

要從遠程服務器下載一個文件,請使用以下命令 get … 例如,下載文件 backup.zip ,請使用以下命令:

get backup.zip

輸出應如下所示:

200 PORT command successful
150-Connecting to port 60609
150 6516.9 kbytes to download
226-File successfully transferred
226 2.356 seconds (measured here), 2.70 Mbytes per second
6673256 bytes received in 2.55 seconds (2.49 Mbytes/s)

要一次上傳多個文件,請使用以下命令 mget… 您可以指定單個文件名列表或使用通配符。

mget backup1.zip backup2.zip

上載多個文件時,將提示您確認每個文件。

mget backup1.zip? y
200 PORT command successful
150 Connecting to port 52231
226-File successfully transferred
226 0.000 seconds (measured here), 31.51 Kbytes per second
14 bytes received in 0.00058 seconds (23.6 kbytes/s)
mget backup2.zip? y
200 PORT command successful
150-Connecting to port 59179
150 7.2 kbytes to download
226-File successfully transferred
226 0.000 seconds (measured here), 16.68 Mbytes per second
7415 bytes received in 0.011 seconds (661 kbytes/s)

一旦您完成了從遠程FTP上下載文件的操作,服務器將關閉與 bye 或者 quit

quit

221-Goodbye. You uploaded 0 and downloaded 6544 kbytes.
221 Logout.

要將文件從本地目錄上載到遠程FTP服務器,請使用以下命令 put

put image.jpg

輸出應如下所示:

200 PORT command successful
150 Connecting to port 34583
226-File successfully transferred
226 0.849 seconds (measured here), 111.48 Kbytes per second
96936 bytes sent in 0.421 seconds (225 kbytes/s)

如果要下載不在當前工作目錄中的文件,請使用絕對文件路徑。

要將多個文件從本地目錄上傳到遠程FTP服務器,請使用以下命令 mput

mput image_andreyex.jpg image2.jpg

mput image_andreyex.jpg? y
200 PORT command successful
150 Connecting to port 41075
226-File successfully transferred
226 1.439 seconds (measured here), 114.32 Kbytes per second
164204 bytes sent in 0.76 seconds (216 kbytes/s)
mput image2.jpg? y
200 PORT command successful
150 Connecting to port 40759
226-File successfully transferred
226 1.727 seconds (measured here), 111.75 Kbytes per second
195836 bytes sent in 1.25 seconds (141 kbytes/s)

上載多個文件時,系統將提示您確認要上載的每個文件。

完成將文件上傳到遠程FTP服務器後,服務器將關閉與 bye 或者 quit

在本文中,您學習了如何使用ftp命令將文件上傳和傳輸到遠程FTP服務器。

請禁用您的廣告攔截器或將此網站列入白名單!

Sidebar