從 Mac(Unix)遷移到 Windows

本指南將你熟悉的 macOS 開發工作流程轉移到 Windows、Windows 子系統 Linux 版(WSL)以及 Windows 原生開發工具。

對於原生 Windows 應用程式開發,最接近 Xcode 的對應工具是 Visual Studio。 若要跨平台原始碼編輯及大型擴充生態系統,請使用 Visual Studio Code。 如果你從終端機或跨平台框架建置 Windows 應用程式,公開預覽的 Windows 應用程式 Development CLI 可以設定 SDK、新增套件身份,並建立 MSIX 套件。

設定 Windows 以進行開發

先從以下 Windows 11 功能開始:

  1. 設定開發者設定。 在 Windows 11、25H2 及更新版本中,開啟>系統>進階設定以設定副檔名、隱藏檔案、長路徑、預設終端機、PowerShell 腳本、sudo、開發者模式及開發者硬碟。 在較早期的版本中,可以搜尋 「開發者設定」。 開發者模式主要用於開發、部署和測試 Windows 應用程式;大多數網頁或跨平台開發並非必需。 詳情請參閱進階 Windows 設定

  2. 用 WinGet 安裝工具。Windows 封裝管理員(WinGet)是Windows相當於 Homebrew 這類package manager的版本。 用它來搜尋、安裝、升級、移除和配置應用程式。 例如,winget upgrade --all 會更新 WinGet 管理的套件。

  3. 讓設定可重複。WinGet Configuration 使用 YAML 檔案來宣告套件和 Windows 設定。 將配置與專案或入職文件一同儲存,執行前檢視其資源,並以以下方式套用:

    winget configure -f <path-to-configuration-file>
    
  4. 考慮開發硬碟。Dev Drive 是一個針對開發工作負載優化的 ReFS 磁碟區。 用它來管理原始碼倉庫、套件快取和建置輸出,而不是一般文件。 從設定>、系統>儲存>、進階儲存設定>、磁碟與磁碟區建立一個。

鍵盤快捷方式

小提示

使用 PowerToys 鍵盤管理器 來重新映射按鍵和快捷鍵。 PowerToys 快速口音 提供快速存取帶有口音的角色。

Operation macOS Windows
複本 Command+C Ctrl+C
剪下 指令+X Ctrl+X
貼上 Command+V Ctrl+V
還原 命令+Z Ctrl+Z
儲存 指令+S Ctrl+S
打開 快捷鍵 Command+O Ctrl+O
鎖定計算機 指令+控制+Q Windows 鍵+L
顯示桌面 Command+F3 Windows 鍵+D
開啟檔案瀏覽器 Finder 中的 Command+N Windows 鍵 + E
將前置應用程式或桌面上的所有視窗最小化 指令+選項+M(前置應用程式) Windows 鍵+M(桌面)
搜尋 命令+空格 Windows 鍵+S
關閉文件或分頁 Command+W Ctrl+W
關閉啟用中的應用程式或關閉啟用視窗 Command+Q(退出應用程式) Alt+F4(關閉視窗)
切換應用程式 Command+Tab(命令鍵+Tab鍵) Alt+Tab 快捷鍵
顯示開啟的窗戶 Control+向上鍵 Windows 鍵+Tab
切換虛擬桌面 Ctrl+向左鍵或 Ctrl+向右鍵 Windows 鍵+Ctrl+左鍵或 Windows 鍵+Ctrl+右鍵
開放式快貼版面 N/A Windows 鍵+Z
儲存截圖 Command+Shift+3 Windows 鍵 + PrtScn
擷取區域或視窗 Command+Shift+4 Windows 鍵+Shift+S
檢視專案資訊或屬性 Command+I (命令鍵+I) Alt+Enter (快速鍵)
選取所有項目 Command+A Ctrl+A
選擇不相鄰的項目 按住 Command 鍵,然後選取每個項目 按 Ctrl,然後選取每個項目
開啟表情符號與符號選擇器 控制+指揮+空間 Windows 鍵+。

在 Windows 終端機 中,預設使用 Ctrl+Shift+C 和 Ctrl+Shift+V 來複製貼上。 Ctrl+C 仍可用來中斷執行中的指令。

追蹤板快捷方式

備註

這些手勢需要精準的觸控板操作。 在 設定 > 藍牙與裝置 > 觸控板中設定三指和四指手勢。

Operation macOS Windows
捲動 兩指垂直滑動 兩指垂直滑動
縮放 雙指捏合 雙指捏合
開啟操作功能表 雙指點按 雙指輕點
顯示開啟的窗戶 四指向上滑動 三指向上滑動
顯示桌面 張開四根手指 三指向下滑動
切換應用程式 N/A 以三指向左或向右滑動
切換虛擬桌面 四指向左或向右滑動 四指向左或向右滑動

關於目前的手勢清單,請參見 Windows 的觸控手勢

命令列介面和終端機

Windows 終端機 可以承載 PowerShell、命令提示字元、WSL 發行版、SSH、Azure CLI、Git Bash 及其他命令列應用程式。

PowerShell

PowerShell 是一種跨平台的 shell 與自動化語言,建基於 .NET 架構。 PowerShell 7 是開放原始碼,可在 Windows、macOS 和 Linux 上運行,並可與隨 Windows 附贈的 Windows PowerShell 5.1 版本一同安裝。 使用 WinGet 安裝目前版本:

winget install --id Microsoft.PowerShell --source winget

使用 pwsh 啟動 PowerShell 7。 像 lsmvcat 這類指令是 PowerShell 指令列的別名,而非 GNU 工具。 它們的參數與基於物件的管線行為與 Bash 不同。 翻譯腳本時請使用 Get-Help 並閱讀有關 PowerShell 別名 的相關資訊。

命令提示字元仍適用於依賴 Cmd 語法的批次檔案與工具。

原生 Unix 風格工具

許多熟悉的指令在 Windows 上原生執行,無需 WSL:

  • Coreutils for Windows 提供由 Microsoft 維護的指令建置版本,例如 lscatcpuniqsorttailfindwcmvgrephead。 使用 winget install Microsoft.Coreutils 安裝。 PowerShell 別名可能會具有較高的優先順序,因此,當你明確想要使用 Coreutils 指令時,請使用例如 ls.execp.exe 之類的名稱。
  • sudo 可在 Windows 11 24H2 版及更新版本中,透過使用者帳戶控制(User Account Control)將命令提升權限。 與 Unix sudo不同,它不會以其他使用者身份執行指令。 在 Windows 11(25H2 及以上版本)中,請在設定>>系統進階中啟用。
  • curltar 已包含在內,可用於下載檔案和處理封存檔。
  • Edit 是一款輕量級終端機文字編輯器,包含於現行 Windows 11 版本中。 使用 winget install Microsoft.Edit 在其他支援的系統上安裝。

使用 Linux 搭配 WSL

Windows 子系統 Linux 版(WSL)直接在 Windows 上運行 Linux 環境,對於從 macOS 轉過來的開發者來說,通常是最熟悉的選擇。 新安裝預設使用 WSL 2。

要用預設的 Ubuntu 發行版安裝 WSL,請在升高的 PowerShell 視窗執行以下指令,然後重新啟動 Windows:

wsl --install

若要選擇不同的發行版,請列出可用的發行版,並依名稱安裝:

wsl --list --online
wsl --install -d <DistributionName>

安裝後,請使用以下指令更新 WSL:

wsl --update

為了在 Linux 工具中獲得最佳效能,建議將專案儲存在 Linux 檔案系統中,例如 /home/<user>/project,而非 。/mnt/c 從 WSL 執行 explorer.exe . ,在檔案總管中開啟目前的目錄。 Windows 會將 Linux 檔案顯示於 \\wsl$ 下,而 Windows 和 Linux 的指令可以互相呼叫。

Visual Studio Code 可在 WSL 中開啟專案code .,編輯器介面保留在 Windows,而擴充功能、終端機與工具則可在 Linux 中執行。 請參閱《使用 Visual Studio Code 在 WSL 中開發》以及跨 Windows 與 Linux 檔案系統的作業

使用 Windows 終端機

Windows 終端機 是 Windows 上命令列作業的推薦主機。 它支援設定檔、分頁、分割窗格、主題、Unicode 以及 GPU 加速的文字渲染。 Windows 終端機 隨 Windows 11 一起提供,並可於 Microsoft Store for Windows 10 取得。

  • 用 Ctrl+Shift+P 開啟它的指令面板。
  • 使用 Alt+Shift+Plus 或 Alt+Shift+Minus,將目前的設定檔分割成多個窗格。
  • 建立 PowerShell、WSL、命令提示字元、SSH 及其他工具的設定檔。

舊有的 Windows 控制台主機仍可與舊有的命令列應用程式相容。

視窗管理與生產力

Windows 11 包含 Snap 版面配置、Snap Assist、Snap 群組及多個桌面。 將滑鼠移至視窗的最大化按鈕上,或按 Windows 鍵+Z來選擇版面配置。 使用 Windows 鍵+Tab 來查看 Snap 群組和桌面。

Microsoft PowerToys 為開發者和進階使用者新增了實用工具。 Command Palette 是一款類似 Spotlight 的啟動器,可用於應用程式、指令、檔案、設定、WinGet 套件、開啟視窗、剪貼簿歷史紀錄及終端機設定檔。 用 Windows 鍵+Alt+空格開啟。 其他實用工具包括鍵盤管理器、快速重音、FancyZones 和 Workspaces。

檔案總管結合了本地與雲端檔案、置頂位置、分頁及近期項目。 使用 View > Show 來顯示副檔名和隱藏檔案。 精簡的內容功能表會將常用命令置於最上方;若要使用舊版殼層擴充功能,請選取 顯示更多選項

應用程式和公用程式

任務 macOS Windows
設定 系統設定 設定
監控流程 活動監視器 工作管理員
格式化與分割磁碟 磁碟公用程式 磁碟管理
編輯文字 文字編輯器 記事本或 編輯
查看系統事件 控制台 事件檢視器 (事件檢視器)
尋找檔案與應用程式 聚光燈 Windows 搜尋或 PowerToys 命令面板
管理套件 Homebrew WinGet
儲存開發檔案 N/A Dev 磁碟機
執行 Unix 命令列工具 內建 Coreutilssudo 或 WSL
排列窗戶 任務控制中心 快夾版面與多重桌面
新增生產力工具 N/A PowerToys