在處理網頁伺服器、雲端基礎架構或是維護大型資料庫時,有時候我們需要的不是華麗的視覺界面,而是能在終端機(Terminal)或指令介面中快速執行的操作。雖然現在很多圖形化工具非常方便,但如果你已經熟悉 Linux 環境,或者是需要透過腳本自動化處理檔案同步,掌握 SFTP 指令就是實用到極致的必備技能。

為什麼我們在 2026 年仍要學 SFTP 指令?

很多人可能會問:現在不是有各式各樣的 GUI 工具嗎?為什麼還要去記那些古老的指令?

原因很簡單:效率與穩定性。當你要同時上傳幾百個小檔案到 Web 伺服器,或者在兩個遠端伺服器之間搬運大量數據時,圖形介面軟體有時候會因為連線不穩而斷掉或重啟;而透過指令操作,我們可以更精確地控制連線、處理路徑,甚至將這些動作寫入 bashpowershell 腳本中自動化執行。

此外,SFTP(SSH File Transfer Protocol)與傳統的 FTP 不同在於它建立在 SSH 協定之上。這意味著你的帳號密碼和傳輸內容都會經過加密,這是目前企業環境中最標準的安全做法。如果你目前的服務需要高度安全性,絕對不建議使用明文傳輸的純 FTP。

SFTP 指令與傳統 FTP 的關鍵差異

在開始操作前,我們要先釐清兩個重要的觀念:

  1. 安全層級:FTP 傳輸內容是公開的,SFTP 是加密過的。在目前的資安環境下,除非是在內網測試,否則建議一律使用 SFTP。
  2. 通訊埠(Port):傳統 FTP 通常使用 Port 21,而 SFTP 預設使用 Port 22(與 SSH 一樣)。

如果你習慣用圖形介面來管理這些連線,WinSCP 5.17.9 SFTP免費軟體,比FTP更具有安全性 是個非常穩定的選擇。但今天我們要聊的是如何直接在命令列操作。

基本觀念:進入 SFTP 環境

要開始傳輸之前,你必須先建立連線。在大多數的 Linux、macOS 或 Windows (透過 PowerShell / WSL) 中,輸入指令如下:

```bash
sftp username@remote_server_ip
```

如果伺服器有修改預設的 Port(例如改成 2222),則需要加上 -P 參數:

```bash
sftp -P 2222 username@remote_server_ip
```

連線成功後,你會進入一個類似 FTP 的互動式介面。此時系統會提示你目前處於「遠端伺服器」的目錄中。

實戰指令:最常用的操作動作

一旦進入 SFTP 環境,掌握以下幾個核心指令就能解決 90% 的日常工作:

#### 1. 切換路徑與確認位置
在傳輸之前,最常遇到的問題就是「我現在在哪裡?」以及「我要去哪裡?」。

  • ls:列出遠端伺服器目前目錄下的所有檔案。
  • cd /path/to/directory:切換到遠端的目標資料夾(例如 /var/www/html)。
  • pwd:顯示當前所在的完整路徑。如果你不確定現在在哪,這條指令是救命用的。
  • lpwd(Local Path):這非常重要! 它會顯示你「本地電腦」目前所在的位置。因為 SFTP 同時處理兩個地方的檔案,常有時候我們會搞混目前的實體位置。

#### 2. 基本傳輸指令
這是核心功能,記住「往哪裡放」的邏輯即可:

  • get filename:將遠端伺服器上的文件下載到你的本地電腦。
  • put filename:將你本地電腦的檔案上傳到遠端伺服器。
  • mget *.jpg:如果你要一次上傳或下載多個符合條件的文件(例如所有的 JPG 檔),可以使用 mget。這個指令在處理大量圖片或靜態資源時非常實用。

#### 3. 管理檔案與目錄
有時候在上傳前,我們需要先整理遠端空間:

  • rm filename:刪除遠端的檔案。
  • mkdir folder_name:在遠端建立新資料夾。
  • ls -la:列出所有檔案(包含隱藏檔),確認權限與屬性。

進階技巧:避免手動操作的煩瑣

雖然互動式 SFTP 很強大,但如果你是為了「固定任務」而使用指令,那麼有時候直接在 Command Line 使用 scp 或相關工具會更高效。或者,如果你需要一個能在不同環境流暢切換、且同時支援多種協定的管理工具,像 muCommander 0.9.3 全能檔案總管,連結各種網路伺服器(FTP、SFTP、NFS、HDFS、S3、SMB、HTTP) 這類軟體能在視覺與功能上提供極大的便利。

但我們回到指令題,如果你需要快速執行「一鍵式」傳送。在 Linux 環境中,你可以結合 scp 指令:

```bash

將本地的資料夾整個上傳到遠端伺服器

scp -r ./my_data user@remote_ip:/path/to/destination
```

這比進入互動式 SFTP、切換目錄、再下 put 指令要快得多。

常見陷阱與處理建議

在實作過程中,有幾個新手常踩到的坑:

  1. 傳輸中斷:如果檔案很大(例如超過 1GB),使用基本的 getput 指令時,萬一網路瞬間斷線,進度會直接消失。這種情況建議使用支援續傳功能的工具或是寫入更複雜的腳本來處理。
  2. 權限問題:如果你在執行 put 時出現

不用介面也能搞定!實戰教學:用 SFTP 指令在終端機快速傳輸檔案 操作畫面 1