下列 WSL 命令會以 PowerShell 或 Windows 命令提示字元所支援的格式列出。 若要從 Bash /Linux 發行版命令行執行這些命令,您必須以 wsl
取代 wsl.exe
。 如需命令的完整清單,請執行 wsl --help
。 如果您尚未這麼做,建議您 更新為從 Microsoft Store 安裝的 WSL 版本,以便儘快接收 WSL 更新。 (深入瞭解如何透過 Microsoft Store 安裝 WSL。)。
安裝
wsl --install
安裝 WSL 和 Linux 的預設 Ubuntu 版本。
深入瞭解。 您也可以執行 wsl --install <Distribution Name>
,以使用此命令來安裝其他 Linux 發行版。 如需有效的通訊群組名稱清單,請執行 wsl --list --online
。
選項包括:
-
--distribution
:指定要安裝的Linux發行版。 您可以執行wsl --list --online
來找到可用的配置。 -
--no-launch
:安裝Linux發行版,但不會自動啟動。 -
--web-download
:從在線來源安裝,而不是使用 Microsoft Store。
未安裝 WSL 時,可選擇的選項包括:
-
--inbox
:使用 Windows 元件安裝 WSL,而不是使用 Microsoft 市集。 (WSL 更新將會透過 Windows 更新接收,而不是通過商店立即推送更新)。 -
--enable-wsl1
:在安裝Microsoft市集版本的 WSL 期間啟用 WSL 1,同時啟用「適用於 Linux 的 Windows 子系統」選用元件。 -
--no-distribution
:安裝 WSL 時,請勿安裝發行版。
注意
如果您在 Windows 10 或較舊版本上執行 WSL,您可能需要將 -d
旗標與 --install
命令一起使用以指定發行版本:wsl --install -d <distribution name>
。
列出可用的Linux發行版
wsl --list --online
請參閱透過在線商店取得的Linux發行版清單。 這個指令也可以輸入為:wsl -l -o
。
列出已安裝的Linux發行版
wsl --list --verbose
查看安裝在 Windows 電腦上的 Linux 發行版清單,包括狀態(無論是正在執行或已停止),以及執行該發行版的 WSL 版本(WSL 1 或 WSL 2)。
比較 WSL 1 和 WSL 2。 這個指令也可以輸入為:wsl -l -v
。 可與 list 命令搭配使用的其他選項包括:--all
列出所有散發套件、--running
只列出目前正在執行的散發套件,或 --quiet
只顯示散發套件名稱。
將 WSL 版本設定為 1 或 2
wsl --set-version <distribution name> <versionNumber>
若要指定 Linux 發行版所運行的 WSL 版本(1 或 2),請將 <distribution name>
替換為該發行版的名稱,並將 <versionNumber>
替換為 1 或 2。
比較 WSL 1 和 WSL 2。 WSL 2 僅適用於 Windows 11 或 Windows 10 版本 1903、組建 18362 或較新版本。
警告
在 WSL 1 和 WSL 2 之間切換可能會很耗時,而且因為兩個架構之間的差異而導致失敗。 對於有大型專案的發行版,我們建議您在嘗試轉換之前先備份檔案。
設定預設 WSL 版本
wsl --set-default-version <Version>
若要設定預設版本的 WSL 1 或 WSL 2,請將 <Version>
取代為數位 1 或 2。 例如,wsl --set-default-version 2
。 此數字代表將新 Linux 發行版安裝設為預設的 WSL 版本。
比較 WSL 1 和 WSL 2。 WSL 2 僅適用於 Windows 11 或 Windows 10 版本 1903、組建 18362 或較新版本。
設定預設 Linux 散發套件
wsl --set-default <Distribution Name>
若要設定 WSL 命令將用來執行的預設 Linux 發行版,請將 <Distribution Name>
取代為您慣用的 Linux 發行版名稱。
在使用者的主目錄中啟動 WSL
wsl ~
~
可以搭配 wsl 使用,以在使用者的主目錄中啟動。 若要從 WSL 命令提示字元內的任何目錄跳回主目錄,您可以使用 命令:cd ~
。
從 PowerShell 或 CMD 執行特定的 Linux 發行版
wsl --distribution <Distribution Name> --user <User Name>
若要以特定使用者執行特定的 Linux 發行版,請將 <Distribution Name>
取代為您慣用 Linux 發行版的名稱(即。Debian) 和 <User Name>
現有用戶的名稱(即 root)。 如果使用者不存在於 WSL 發行版中,您會收到錯誤訊息。 若要列印目前的使用者名稱,請使用 命令 whoami
。
更新 WSL
wsl --update
將您的 WSL 版本更新為最新版本。 選項包括:
-
--web-download
:從 GitHub 下載最新的更新,而不是 Microsoft 商店。
檢查 WSL 狀態
wsl --status
請參閱 WSL 設定的一般資訊,例如預設發行版類型、預設發行版和核心版本。
檢查 WSL 版本
wsl --version
檢查 WSL 及其元件的版本資訊。
幫助命令
wsl --help
請參閱 WSL 可用的選項和命令清單。
以特定使用者身分執行
wsl --user <Username>
若要以指定的使用者身分執行 WSL,請將 <Username>
取代為 WSL 發行版中存在的使用者名稱。
變更發行版的預設使用者
<DistributionName> config --default-user <Username>
更改您發行版的預設登錄使用者。 用戶必須已存在於散發套件內,才能成為默認使用者。
例如:ubuntu config --default-user johndoe
會將 Ubuntu 發行版的預設用戶變更為 johndoe 使用者。
注意
如果您無法找出發行版的名稱,請使用命令 wsl -l
。
警告
此命令不適用於匯入的散發套件,因為這些散發套件沒有可執行的啟動器。 您可以改為使用 /etc/wsl.conf
檔案來更改匯入發行版的預設使用者。 請參閱 進階設定組態 檔中的自動掛接選項。
關閉
wsl --shutdown
立即終止所有執行中的發行版和 WSL 2 輕量型的公用程式虛擬機。 在需要重新啟動 WSL 2 虛擬機環境的實例中,可能需要此命令,例如 變更記憶體使用量限制,或變更 .wslconfig 檔案。
終止
wsl --terminate <Distribution Name>
若要終止指定的發行版本,或停止其運行,請將 <Distribution Name>
取代為目標發行版本的名稱。
識別IP位址
-
wsl hostname -I
:傳回透過 WSL 2 安裝的 Linux 發行版 IP 位址(WSL 2 VM 位址) -
ip route show | grep -i default | awk '{ print $3}'
:從 WSL 2 傳回 Windows 電腦的 IP 位址(WSL 2 VM)
如需更詳細的說明,請參閱使用 WSL 存取網路應用程式 :識別 IP 位址。
匯出發行版本
wsl --export <Distribution Name> <FileName>
將指定分佈的快照匯出為新的分佈檔案。 預設為 tar 格式。 作為標準輸入的檔名可以是 -
。 選項包括:
-
--vhd
:指定匯出的發行版本應該是 .vhdx 檔案,而不是 tar 檔案(這只支援使用 WSL 2)
匯入分發
wsl --import <Distribution Name> <InstallLocation> <FileName>
將指定的 tar 檔案匯入作為新的發行版本。 作為標準輸入的檔名可以是 -
。 選項包括:
-
--vhd
:指定匯入的發行版本應該是 .vhdx 檔案,而不是 tar 檔案(這僅支援在 WSL 2 中使用) -
--version <1/2>
:指定是否要將發行版匯入作為 WSL 1 或 WSL 2 發行版
就地匯入發行套件
wsl --import-in-place <Distribution Name> <FileName>
將指定的 .vhdx 檔案匯入為新的發行版。 虛擬硬碟必須格式化為 ext4 檔案系統類型。
取消註冊或卸載 Linux 發行版
雖然 Linux 發行版可以透過 Microsoft 市集安裝,但無法透過存放區卸載。
若要取消註冊並卸載 WSL 發行版:
wsl --unregister <DistributionName>
以目標 Linux 發行版的名稱取代 <DistributionName>
,將會從 WSL 取消註冊該發行版,以便重新安裝或清理。
注意: 一旦取消註冊,與該散發相關聯的所有數據、設定和軟體都將永久遺失。 從商店重新安裝將會安裝發行版的乾淨的版本。 例如,wsl --unregister Ubuntu
會從 WSL 中可用的發行版中移除 Ubuntu。 執行 wsl --list
會發現它不再列出。
您也可以將 Windows 電腦上的 Linux 散發應用程式卸載,就像任何其他市集應用程式一樣。 若要重新安裝,請在 Microsoft Store 中尋找散發套件,然後選取 [啟動]。
掛接磁碟或裝置
wsl --mount <DiskPath>
將所有 WSL2 發行版本中的實體磁碟連結並掛載,方法是將 <DiskPath>
替換為磁碟所在的目錄\檔案路徑。 請參閱 在 WSL 2中掛載 Linux 磁碟。 選項包括:
-
--vhd
:指定<Disk>
參考虛擬硬碟。 -
--name
:使用裝入點的自定義名稱掛接磁碟 -
--bare
:將磁碟附加至 WSL2,但不要掛載。 -
--type <Filesystem>
:如果未指定,則掛接磁碟時要使用的文件系統類型為 ext4。 這個指令也可以輸入為:wsl --mount -t <Filesystem>
。您可以使用 命令來偵測檔案系統類型:blkid <BlockDevice>
,例如:blkid <dev/sdb1>
。 -
--partition <Partition Number>
:要掛載的分割區索引編號,如果未指定則預設為整個磁碟。 -
--options <MountOptions>
:掛載磁碟時可以包含一些特定於文件系統的選項。 例如,ext4 掛接選項,例如:wsl --mount -o "data-ordered"
或wsl --mount -o "data=writeback
。 不過,目前僅支援文件系統特定的選項。 不支援泛型選項,例如ro
、rw
或noatime
。
注意
如果您要執行 32 位行程以存取 wsl.exe (64 位工具),您可能需要以下列方式執行命令:C:\Windows\Sysnative\wsl.exe --command
。
卸除磁碟
wsl --unmount <DiskPath>
在指定的磁碟路徑卸載磁碟,如果沒有提供磁碟路徑,則此命令將卸載並卸離所有已掛接的磁碟。
不建議使用的 WSL 命令
wslconfig.exe [Argument] [Options]
bash [Options]
lxrun /[Argument]
這些命令是用來設定隨 WSL 安裝之 Linux 發行版的原始 wsl 語法,但已取代為 wsl
或 wsl.exe
命令語法。