Berth 使用說明書

SFTP · 終端機 · 序列主控台,盡在一個視窗——從新增伺服器到快速鍵

🚀快速開始

畫面配置

一個視窗裡有四個區域。

新增第一台伺服器

  1. 在側邊欄的空白處按右鍵,或按下 ⌘N
  2. 輸入名稱與伺服器位址。使用者、連接埠留空則使用預設值。
  3. 在清單中點按兩下即可連線。點按一下則是選取。
💡 如果伺服器已經能在終端機中用 ssh alias 連線,就不必重新設定。透過側邊欄選單的從 ~/.ssh/config 匯入⌘⇧I)一次全部匯入。也可以匯入 FileZilla 的站台清單。

切換語言

從選單的Berth › 設定⌘,)中挑選 20 種語言之一。預設會跟隨系統語言,所選的語言只套用在這個應用程式。變更後重新啟動應用程式即可生效。

🗂伺服器與資料夾

用資料夾分組與繼承設定

用資料夾(⌘⇧N)將伺服器分組後,設定會向下繼承。只要在資料夾上設定一次使用者名稱或注意等級,底下的所有伺服器都會套用。這個機制就是為了不必在二十台伺服器上重複輸入同一個值二十次。

設定視窗的每一欄都會在下方標示該值來自何處(是自己設定的,還是從哪個資料夾繼承的),並提供還原按鈕,可以退回繼承值。

注意等級 — 開發 · 預備 · 正式

等級優先於顏色。設為正式後,危險操作前會額外確認。在工作階段清單中以你選擇的顏色填滿,並以紅色邊框標示為正式,因此多個正式伺服器仍可用顏色區分。在一次只顯示一個的地方(例如確認對話框),它維持紅色作為強烈提醒。

點按規則

🔑連線與驗證

第一次連線時 — 資料夾權限

Berth 遵守 App Store 的規則(沙盒),不會任意讀取家目錄。第一次開啟伺服器時,會請您選擇存放 SSH 設定、金鑰、known_hosts 的資料夾(通常是 ~/.ssh)一次。選過一次後就會記住,不會再次詢問。如果金鑰放在別處,也可以改選家目錄。

基於同樣的原因,本機檔案面板也以您所選擇的資料夾作為根目錄——可以透過面板標題列的開啟本機資料夾更換,這個選擇同樣會被記住。

讀取 ~/.ssh/config

以別名連線時,會讀取該項目的主機、連接埠、使用者、金鑰檔案、ProxyJumpStrictHostKeyChecking 並套用。即使 Berth 儲存的連接埠已過時,仍以設定檔為準。

⚠️ 有兩件事做不到。ProxyCommand 是啟動外部程式的功能,會被沙盒擋下——跳板主機請改用 ProxyJump 設定。也連不上 ssh-agent,因此會直接讀取金鑰檔案;設有密碼的金鑰會在連線時詢問密碼。

驗證方式

⚠️ 如果伺服器原本只用 ssh 就能在終端機連上,選「自動」就對了。以為指定金鑰會有幫助,結果反而連不上——因為那樣只會嘗試指定的那一把金鑰。

當伺服器詢問時

儲存密碼後,連線時會自動代答一次。除此之外的問題——兩步驟驗證代碼、密碼輸入錯誤後的重新輸入、有密碼保護的金鑰密碼——會原封不動顯示在「伺服器傳來了請求」視窗中,由您親自作答。為避免帳號被鎖定,已儲存的密碼只會自動輸入一次,最多只詢問三次。

不想再手動輸入密碼

在伺服器上按右鍵選擇在此伺服器註冊公鑰…,即可將 ~/.ssh 中的公鑰上傳到伺服器。之後將以金鑰連線。

已儲存的密碼只存在macOS 鑰匙圈中。設定檔裡只留下「已儲存」的標記,不會存入實際的值。

第一次看到的伺服器、變更的主機金鑰

第一次連線的伺服器,會顯示金鑰的種類與指紋並詢問是否記住。選擇記住後,會以與 ssh 相同的格式寫入 ~/.ssh/known_hosts,之後不會再次詢問。

當伺服器的身分與上次不同時,也會出現這個視窗。可能是中間人攻擊,也可能只是伺服器重新安裝過。Berth 不會代您判斷,只提供判斷所需的材料——新舊金鑰的種類與指紋,甚至是可以在裝置主控台上直接核對的指令。確認無誤後按下「刪除舊金鑰並記住新金鑰」,便會刪除舊項目(備份為 known_hosts.old)並寫入新金鑰。

💡 像經常重新燒錄的開發板這種每次都會跳出這個視窗的裝置,可以在該伺服器的設定中開啟不記住主機金鑰。為了讓風險只侷限在這一台,known_hosts 不會被更動。正式等級不能開啟此選項。

檔案面板(SFTP)

上傳與下載

左邊是您的 Mac,右邊是伺服器。可以拖放,或用 ⌥⌘→(上傳)、⌥⌘←(下載)傳送。進度會累積在傳輸列中。

跟隨終端機的檔案面板

在終端機中執行 cd 時,遠端面板會跟著切換到同一個資料夾。若這個跟隨動作造成困擾,可用 ⌘⇧L 關閉。

常用路徑 · 檢視

比對差異

⌘⇧Y 開啟後,會將本機與遠端並排比對,標示出不同的檔案、只存在於一邊的檔案。適合只想傳送需要的部分時使用。

🌏 macOS 與 Linux 會用不同的位元組記錄韓文、日文、越南文檔名。Berth 只在配對比對時統一名稱,因此看起來相同的檔案不會被誤判成「兩邊各有一個」。實際傳輸時,一律使用伺服器上原本的檔名。

刪除

⌘⌫ 預設會移到伺服器端的廢紙簍,且一律會先詢問確認。若伺服器關閉了廢紙簍功能,會事先提醒此操作無法復原。

⌨️終端機

這是能讓 vimtmuxless 原封不動運作的真正殼層。 用滑鼠拖曳選取,以 ⌘C 複製,命令貼上時不會帶入行尾多餘的填充空白,乾淨俐落。

貼上確認

貼上多行內容時,會先顯示即將執行的內容。因為含有換行的貼上內容,會直接當場變成指令執行。看起來危險的內容會連同原因一併標示出來。

放大檢視

⌘↩ 放大目前的區域,再按一次即可還原。⌥⌘↩ 只放大單一面板。字級大小為 ⌘+⌘-⌘0。 用 ⌘L 清空終端機——畫面與捲動記錄會清除,只留下目前的提示行。

🔌序列主控台(UART)

選擇裝置

⌃⌘N 新增序列主控台,並在設定中選擇已插入的裝置。Berth 記住的不是路徑,而是裝置本身——有序號就以序號辨識,沒有就以種類辨識。就算插到不同的 USB 位置,也能找到同一個裝置。

💡 該序號來自 USB 列舉出的資訊。若使用 USB 轉序列埠轉接器,記住的其實是轉接器本身,換了轉接器就得重新選擇。

速度與線路設定

速度可以從清單中選擇,也可以直接輸入(像 1,500,000 這樣超出標準的值也可以——但必須是轉接器能接受的值)。預設為8N1 · 無流量控制,大部分的主控台都是這個值。

⚠️ 沒有流量控制的 UART,在連續、大量通訊時可能出現裝置停止傳送的情況。這不是本應用程式獨有的問題,而是線路本身的特性(用同一條線接其他程式也一樣),根本的解決方法是在四線纜線上開啟流量控制,或降低開發板端的速度。

紀錄面板

在序列工作階段中,您輸入的指令與其回應會連同時間一併累積在右側。詢問密碼處的輸入內容會被遮蔽。

快速鍵

應用程式的快速鍵一律包含 組合鍵屬於殼層與 TUI(vim、tmux)使用,應用程式不會佔用。

⌨️ 無需滑鼠。 這裡的每個操作都有快捷鍵——為不想碰滑鼠的人而做,雙手無需離開鍵盤。
按鍵功能
⌘N · ⌃⌘N · ⌘⇧N新增伺服器 · 新增序列主控台 · 建立資料夾
⌘I · ⌘⇧I此伺服器設定 · 從 ~/.ssh/config 匯入
⌘K快速前往 — 依名稱搜尋並直接跳轉
⌘1⌘9切換工作階段
⌃⌘← 在面板之間移動
⌘↩ · ⌥⌘↩放大 / 還原 · 只放大此面板
⌘⇧S · ⌥⌘↑ ⌥⌘↓側邊欄 · 移動分隔線
⌥⌘→ · ⌥⌘←上傳 · 下載
⌘D · ⌘R · ⌥⌘N釘選 / 取消釘選 · 重新讀取 · 新增資料夾
⌘↓ · ⌘↑ · ⌥⌘T深入 · 返回上一層 · 樹狀↔清單
⌘⌫ · ⌘⇧F從遠端刪除 · 在伺服器上搜尋
⌘⇧V · ⌘⇧L · ⌘⇧Y將路徑送到終端機 · 跟隨終端機 · 顯示差異
⌘+ ⌘- ⌘0 · ⌘⇧W字級大小 · 關閉此工作階段
⌘L · ⌘] ⌘[清空終端機 · 切換右側面板分頁
⌘C · ⌘⇧P · ⌘⇧U · ⌘?複製 · 存入記錄 · 重送清單 · 使用手冊

常見問題

密碼儲存在哪裡?

只會儲存在 macOS 鑰匙圈中。設定檔裡只會留下「已儲存」的標記。鑰匙圈只會在連線的當下開啟一次。

會收集使用紀錄嗎?

不會。應用程式內沒有任何追蹤機制。不會統計您開啟了什麼、連線到哪裡。

序列主控台會中途停住。

這是沒有流量控制的 UART 在大量通訊時會出現的線路特性。若是四線纜線,請在設定中開啟流量控制(RTS/CTS);若是三線,請試著降低開發板端的速度,或將輸出分段顯示。

需要重新設定原本就在用的 SSH 設定嗎?

不需要。從 ~/.ssh/config 匯入後,會直接以原本的別名連線,並讀取該項目的主機、連接埠、使用者、金鑰、ProxyJump 來套用。

我的設定用了 ProxyCommand。

ProxyCommand 是啟動外部程式的功能,在 App Store 的沙盒中無法使用。若是透過跳板主機的設定,改用 ProxyJump 即可正常運作。ssh-agent 也因為同樣的原因無法使用,會直接讀取金鑰檔案;設有密碼的金鑰會在連線時詢問密碼。

支援哪些 macOS 版本?

macOS 14(Sonoma)以上,Apple Silicon 與 Intel 均可使用。

如果這個應用程式對您有幫助

Berth 是免費的。您可以透過贊助來支持開發。