在Ubuntu中,sftp
(SSH文件傳輸協議)是一個非常實用的工具,用于通過安全的SSH連接在本地和遠程計算機之間傳輸文件
使用密鑰對進行身份驗證:
如果你已經為SSH設置了公鑰/私鑰對,可以使用-i
選項指定私鑰文件,以便在SFTP會話中使用。例如:
sftp -i /path/to/private_key user@remote_host
傳輸文件或目錄:
要將本地文件上傳到遠程主機,可以使用put
命令。相反,要從遠程主機下載文件,可以使用get
命令。例如:
put local_file remote_file
get remote_file local_file
若要上傳或下載整個目錄,可以使用-r
選項。例如:
put -r local_directory remote_directory
get -r remote_directory local_directory
在SFTP會話中使用命令別名:
你可以在SFTP會話中為常用命令創建別名,以便更快地執行它們。例如,要為ls -l
命令創建一個別名ll
,可以使用以下命令:
alias ll ls -l
然后,你可以在SFTP會話中使用ll
來執行ls -l
命令。
使用通配符進行文件操作:
SFTP支持使用通配符(如*
和?
)進行文件操作。例如,要刪除所有以.txt
結尾的文件,可以使用以下命令:
rm *.txt
使用條件表達式進行文件操作:
SFTP還支持使用條件表達式(如&&
和||
)進行文件操作。例如,要在成功上傳文件后刪除本地文件,可以使用以下命令:
put local_file remote_file && rm local_file
使用!
運行本地命令:
在SFTP會話中,你可以使用!
運行本地計算機上的命令。例如,要在本地計算機上列出當前目錄的內容,可以使用以下命令:
!ls
使用&
在后臺運行命令:
如果你希望在SFTP會話中同時執行多個命令,可以使用&
在后臺運行命令。例如,要在后臺上傳多個文件,可以使用以下命令:
put file1 remote_file1 &
put file2 remote_file2 &
使用|
進行管道操作:
SFTP支持使用|
進行管道操作。例如,要列出遠程主機上的文件并將其傳輸到本地計算機上的文件中,可以使用以下命令:
ls | !tee files.txt
這些高級用法可以幫助你更有效地使用SFTP在本地和遠程計算機之間傳輸文件。請注意,這些示例僅展示了SFTP的一部分功能。要了解更多關于SFTP的信息,可以查看其手冊頁(通過運行man sftp
命令)。