帶有示例的頂級 SFTP 命令 | 完整的 SFTP 指南

已發表: 2022-07-19

什麼是 SFTP? SFTP 是如何工作的?

SFTP(安全文件傳輸協議)是最安全的文件傳輸協議,用於通過完全安全的 SSH 網絡訪問、管理和傳輸文件。

您可能聽說過 FTP 協議。 SFTP 可能類似於 FTP ,但更安全。 SFTP 主要用於通過安全傳輸傳輸和訪問文件,而在 FTP 中,您可以執行多項任務,例如編輯、刪除、管理和傳輸文件。

與 SCP 不同,SFTP 允許用戶訪問和管理文件,而不僅僅是傳輸文件。 但是,本教程都是關於 SFTP 的。 因此,我們將引導您完成可以在 SFTP 中執行的所有可能任務。 在本文中,我們將通過示例向您介紹最有用的 SFTP 命令,這些示例在開始使用安全文件傳輸協議 (SFTP) 之前每個人都應該知道。

什麼是 SFTP - 您需要了解的有關 SFTP 及其命令的所有信息

在進入 SFTP命令之前,要使用 SFTP 連接到遠程服務器,您必須在遠程服務器中打開權限。 如果您無法連接到 SFTP,您應該聯繫您的遠程託管服務提供商。

創建 SFTP 連接

SFTP 支持 SSH 的所有身份驗證方法,因為它是客戶端-服務器模型。 推薦使用 SFTP 傳輸大文件。

要在 SSH 網絡上建立 SFTP 連接,您必須在本地系統上安裝 SSH 客戶端。 例如,我正在使用PuTTY建立從本地服務器到遠程服務器的 SFTP 連接。

  • 要連接 SFTP,請打開 PuTTY 並通過輸入 IP 地址或主機名連接到本地服務器。

膩子配置

  • 輸入用戶名和密碼以登錄您的本地服務器。

登錄到本地服務器

  • 現在您可以使用以下命令建立 SFTP 連接:
 sftp remote_username@serverIP_or_hostname
  • 請參閱下圖,例如我使用了我的 remote_username 和 IP 地址。

sftp 已連接

  • 輸入遠程服務器的密碼並回車以連接 SFTP。 成功連接後,您將能夠看到sftp>提示符。

在某些情況下,遠程服務器會停止偵聽默認的 22 端口,在這種情況下,您可以嘗試在建立連接時手動輸入端口,並按照以下命令進行操作。

 sftp -p custom_port remote_username@serverIP_or_hostname

頂級 SFTP 命令

  • 好吧,您可以在 SFTP 中使用數百個命令。 大多數命令可能類似於 Linux Shell 命令。 您可以使用help命令獲取所有可用 SFTP 命令的列表。
 輸出:

sftp>幫助
可用命令:
再見 退出 sftp
cd path 將遠程目錄更改為“路徑”
chgrp grp path 將文件'path'的組更改為'grp'
chmod mode path 將文件'path'的權限更改為'mode'
chown own path 將文件'path'的所有者更改為'own'
……
……
……
exit 退出 sftp

  • 您可以在pwd命令的幫助下查看當前的遠程工作目錄。
 輸出:

sftp>密碼
遠程工作目錄:/home/Getintod

除此之外,您可以在任何 SFTP 命令之前添加l (本地)以在本地服務器上執行它。 例如,使用lpwd命令查看本地當前工作目錄。

 輸出:

sftp> lpwd
本地工作目錄:/home/learnher

使用ls命令查看遠程 SFTP 中存在的文件和目錄列表。

 sftp> ls 主頁/用戶/路徑

與此類似,使用lls命令查看本地服務器中存在的文件和目錄列表。

 sftp> lls 主頁/用戶/路徑

要瀏覽目錄,可以使用cd命令。

 sftp> cd 主頁/用戶/路徑

與此類似,使用lcd命令更改本地服務器的當前工作目錄。

 sftp> lcd 主目錄/用戶/路徑

在 SFTP 中傳輸文件

您可以使用get命令在 SFTP 中輕鬆下載或傳輸文件(遠程到本地)。

 sftp> 獲取文件名.zip

下載的文件將存儲在當前本地工作目錄中。 此外,您可以使用以下命令下載具有新名稱的文件。

 sftp> 獲取文件名.zip 新名稱.zip

在某些情況下,下載或傳輸可能會失敗或在兩者之間中斷。 您可以按照以下命令恢復下載。

 sftp> 重新獲取文件名.zip

現在您知道了將文件從遠程服務器傳輸到本地服務器的命令。 此外,您還可以使用put命令將文件從本地服務器傳輸到遠程服務器。

 sftp>把文件名.zip

put命令只會傳輸文件,要將目錄從本地傳輸到遠程服務器,您可以在命令中添加遞歸-r參數。

 sftp> put -r 目錄名

同樣,要恢復中斷的文件,請使用以下命令。

 sftp> 信譽文件名.zip

您可以在get命令中使用的put命令中使用所有參數。


其他一些有用的 SFTP 命令

您還應該了解其他一些重要的 SFTP 命令。 但是,如果您知道 Linux Shell 命令,那麼這對您來說會很容易,因為您還可以在 SFTP 中使用一些 Linux shell 命令。

  • 要獲取有關遠程服務器的信息:
 sftp>df
  • 要更改遠程服務器上文件的文件權限:
 sftp> chmod 644 文件名.php
  • 在遠程服務器上創建一個新目錄:
 sftp> mkdir 目錄名
  • 要刪除遠程服務器上的文件:
 sftp> rm 文件名.php
  • 重命名遠程服務器上的文件:
 sftp> 重命名 filaname.php new_filename.php
  • 要刪除遠程服務器上的空目錄:
 sftp> rmdir 目錄名
  • 更改遠程文件的組所有者:
 sftp> chgrp group_id 文件名
  • 更改遠程服務器(根)上文件的所有者:
 [root@test pwd]# chown user_id file_name
  • 要了解您當前的 SFTP 版本:
 sftp>版本
  • 要更改文件/目錄(根)的組和所有者:
 [root@test pwd]# chown username:groupname filename.php
[root@test pwd]# chown username:groupname directoryname
  • 將目錄中的所有內容移動到另一個目錄(將目錄中的所有文件和目錄移動到上一級)。
 sftp> mv -v 目錄名/* ~/home/user/path

除此之外,您不能刪除其中包含內容的任何目錄。 此外,SFTP 不允許用戶創建新文件。 但是,您仍然可以根據需要刪除該文件。

要關閉 SFTP 連接,請鍵入byequit命令並按 Enter 按鈕以移回本地服務器。

我們希望您現在對 SFTP 命令和 SFTP 命令的使用有一些深入的了解。 除此之外,現在您可以輕鬆地將文件從 SFTP 傳輸或下載到本地服務器和本地到 SFTP 服務器。