帶有示例的頂級 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 支持 SSH 的所有身份驗證方法,因為它是客戶端-服務器模型。 推薦使用 SFTP 傳輸大文件。
要在 SSH 網絡上建立 SFTP 連接,您必須在本地系統上安裝 SSH 客戶端。 例如,我正在使用PuTTY建立從本地服務器到遠程服務器的 SFTP 連接。
- 要連接 SFTP,請打開 PuTTY 並通過輸入 IP 地址或主機名連接到本地服務器。
- 輸入用戶名和密碼以登錄您的本地服務器。
- 現在您可以使用以下命令建立 SFTP 連接:
sftp remote_username@serverIP_or_hostname
- 請參閱下圖,例如我使用了我的 remote_username 和 IP 地址。
- 輸入遠程服務器的密碼並回車以連接 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 連接,請鍵入bye或quit命令並按 Enter 按鈕以移回本地服務器。
我們希望您現在對 SFTP 命令和 SFTP 命令的使用有一些深入的了解。 除此之外,現在您可以輕鬆地將文件從 SFTP 傳輸或下載到本地服務器和本地到 SFTP 服務器。