SFTP 是一種協議,它為使用加密的系統之間的文件傳輸提供安全和私有的通道。 對首字母縮略詞 SFTP 存在誤解,有人認為它代表安全文件傳輸協議。 它代表 SSH 文件傳輸協議。 ‘FTPS’ 中的不同之處在於,FTPS 客戶端將首先檢查 ftps 服務器的證書是否可信並使用安全套接字層協議 (TLS)。 很高興閱讀如何在 Ubuntu 18.04 上使用 SSL/TLS 配置 VSFTPD SFTP
人們可能會認為 SFTP 和 FTP 在功能上相似,但兩者採用不同的協議。 因此,您不能使用標準 FTP 客戶端連接到 SFTP 服務器。 在本指南中,我們將重點介紹常用的 SFTP 命令。
另請閱讀: 12 條管理文件的 lftp 命令示例
SFTP 的標準應用是在其自身環境中的命令接口上運行。 這就是為什麼在大多數情況下您會注意到程序界面更改為提示 sftp>。 當您調用 SFTP 會話時,通常的系統命令將不會執行,除非您使用 SFTP 命令行標準中的特定語言調用它們。
並非所有計算機都可以處理 SFTP 命令。 您可以根據所使用的操作系統選擇使用 SFTP 的圖形界面版本或命令行。 GUI 界面要求您安裝 SFTP 實用程序。
在本文中,我們將帶您了解一些可以通過 unix/linux 命令行使用的 SFTP 命令示例。
如何連接 SFTP
用於建立通信的 SSH 協議與 SFTP 通道所需的協議相同。 大多數人更喜歡使用設置為默認值的已保存密碼,但我建議使用 SSH 密鑰,您可以在需要訪問任何系統時使用它。
要啟動 SFTP 會話,您需要用戶名和遠程主機名。 或者,您可以在提示符處使用主機名的 IP 地址,如下所示:
~ # sftp [email protected]
[email protected]'s password:
Connected to [email protected].
在上面 example, 如果存在允許處理上述命令的連接,則在獲得訪問權限之前,您會看到密碼提示。
1) 如何在提示時獲得幫助
如果您不知道可以在 SFTP 命令行上使用的類型或格式,請使用“?” 或在提示下“幫助”如下
sftp ?
2) 確認工作目錄
使用命令 密碼 將提供有關工作目錄的更多信息。 這 密碼 用於檢查遠程工作目錄。
sftp> lpwd
輸出
Local working directory: /root
sftp> pwd
輸出
Remote working directory: /upload
3) 列出文件
在 SFTP 命令提示符下,您可以使用不同的命令列出遠程文件和本地文件。
遠程列表
sftp> ls
本地列表
sftp> lls
4) 上傳文件
上傳可以通過在遠程主機上放置單個或多個文件來進行。
遠程主機上的單個文件使用,
sftp> put Hello-World.txt
輸出
Uploading Hello-World.txt to /upload/Hello-World.txt
Hello-World.txt
遠程主機上的多個文件
sftp> mput *.txt
輸出
Uploading Hello-World.txt to /upload/Hello-World.txt
Hello-World.txt 100% 0 0.0KB/s 00:00
Uploading file1.txt to /upload/file1.txt
file1.txt 100% 0 0.0KB/s 00:00
Uploading file2.txt to /upload/file2.txt
file2.txt 100% 0 0.0KB/s 00:00
Uploading file3.txt to /upload/file3.txt
file3.txt 100% 0 0.0KB/s 00:00
Uploading file4.txt to /upload/file4.txt
file4.txt 100% 0 0.0KB/s 00:00
5) 下載文件
您將能夠在本地路徑或系統中下載單個或多個文件。
sftp> get file1.pdf
輸出
Fetching /upload/file1.pdf to file1.pdf
在本地路徑或系統上下載多個文件
sftp> mget * .pdf
輸出
Fetching /upload/file1.pdf to file1.pdf
Fetching /upload/file2.pdf to file2.pdf
Fetching /upload/file3.pdf to file3.pdf
Fetching /upload/file4.pdf to file4.pdf
Fetching /upload/file5.pdf to file5.pdf
很明顯,在本地系統中下載文件時使用相同的名稱。 如果要在遠程文件下載中使用不同的名稱,則應在命令末尾指定名稱。
6) 切換目錄
在遠程服務器上,您使用命令,
sftp> cd test
在本地機器上,您使用命令,
sftp> lcd Documents
7) 創建目錄
可以在遠程和本地路徑上創建目錄
本地路徑上的新目錄
sftp> mkdir test
遠程主機上的新目錄
sftp> lmkdir Documents
8) 刪除目錄
刪除遠程主機中的目錄或文件
刪除遠程主機中的文件
sftp> rm Report.xls
刪除遠程主機中的目錄
sftp> rmdir Department
注意:此命令僅在目標目錄為空時有效
9) 退出命令外殼
感嘆號! (在這種情況下稱為命令)用於退出 SFTP 命令提示符,如下所示 example.
sftp>!
[root@sftp ~]# exit
Shell exited with status 1
sftp>
看起來很簡單,SFTP 是一個非常強大的工具,用於管理服務器和管理主機之間的文件傳輸。 該實用程序可用於遠程和本地服務器。
另請閱讀:
- 如何在 Linux 中使用 SCP 命令進行文件/目錄傳輸