如何在 Windows 命令列上轉義檔案路徑中的空格

如何在 Windows 命令列上轉義檔案路徑中的空格

Windows 命令提示字元PowerShell等命令列環境使用空格來分隔命令和參數 - 但檔案和目錄名稱也可以包含空格。若要指定其中包含空格的檔案路徑,您需要對其進行「轉義」。

為什麼要逃離空間?

“轉義”或轉義字符會改變其含義。例如,轉義空格將導致 shell 將其視為空格字符,而不是分隔命令列參數的特殊字符。

假設您有一個文字檔案並想要查看其內容。您可以使用 type 命令來完成此操作。假設文字檔案位於C:\Test\File.txt,命令提示字元中的以下命令將顯示其內容:

type C:\Test\File.txt

現在,如果C:\Test Folder\Test File.txt中有相同的檔案呢?如果您嘗試執行下面的命令,它將無法運作 - 檔案路徑中的空格會妨礙操作。

type C:\Test Folder\Test File.txt

命令列認為您正在嘗試搜尋名為C:\Test的文件,並說它「找不到指定的路徑」(找不到指定的路徑)。

如何在 Windows 命令列上轉義檔案路徑中的空格

命令列找不到指定路徑

在 Windows 上轉義空格的 3 種方法

在 Windows 上,您可以透過 3 種不同的方式轉義檔案路徑:

  1. 將路徑(或其部分)括在雙引號 ("") 內。
  2. 透過在每個空格之前加入插入符號 (^)。 (這僅適用於命令提示字元/CMD,似乎不適用於每個命令)。
  3. 透過在每個空格之前新增重音字元 (`)。 (這僅適用於 PowerShell,但它始終有效)。

本文將指導您如何使用每種方法。

將路徑用引號引起來

確保 Windows 正確處理檔案路徑的標準方法是將其括在雙引號 ("") 字元中。例如,對於上面的範例命令,該命令將按如下方式運行:

type "C:\Test Folder\Test File.txt"

如果需要,您實際上可以將部分路徑放在引號中。例如,假設該資料夾中有一個名為File.txt的檔案。您可以執行以下命令:

type C:\"Test Folder"\File.txt

然而,這不是必要的。在大多數情況下,您可以簡單地在整個路徑周圍使用引號。

此解決方案可在傳統命令提示字元 (CMD) 環境和 Windows PowerShell 中運作。

如何在 Windows 命令列上轉義檔案路徑中的空格

將路徑用引號引起來

在空格前使用插入符號 (^)

在命令提示字元中,理論上,插入符 (^) 允許您轉義空格。只需在檔案名稱中的每個空格之前添加它即可。 (您可以在鍵盤的數字行中找到該字元。若要輸入插入符號,請按Shift + 6)。

問題是,雖然這很有效,但並不總是有效。命令提示字元對這個字元的處理很奇怪。

例如,對於範例命令,如果執行以下命令,則該命令將不起作用:

type C:\Test^ Folder\Test^ File.txt

如何在 Windows 命令列上轉義檔案路徑中的空格

上面的命令將不起作用

另一方面,如果您嘗試透過在命令提示字元中輸入文件路徑來直接開啟文件,您可能會發現插入符號會正確轉義空格:

C:\Test^ Folder\Test^ File.txt

如何在 Windows 命令列上轉義檔案路徑中的空格

插入符號正確轉義空格

那麼什麼時候才有效呢?根據研究,它似乎只適用於某些應用程式。根據您使用的命令,情況可能會改變。命令提示字元對這個字元的處理很奇怪。嘗試使用您正在使用的任何命令,它可能會也可能不會。

為了保持一致性,本文建議在命令提示字元中使用雙引號或切換到 PowerShell 並使用以下方法。

使用重音字元 (`)

PowerShell 使用重音字元 (`) 作為轉義字元。只需在檔案名稱中的每個空格之前添加它即可。 (您可以在鍵盤上的Tab鍵上方和Esc鍵下方找到該字元)。

type C:\Test` Folder\Test` File.txt

每個重音字元都需要 PowerShell 對後面的字元進行轉義。

請注意,這僅適用於 PowerShell 環境。您必須在命令提示字元中使用插入符號。

如何在 Windows 命令列上轉義檔案路徑中的空格

使用重音字元 (`)

如果您熟悉 Linux 和 macOS 等類 UNIX 作業系統,您可能熟悉在空格前使用反斜線字元 (\) 來轉義它。 Windows 使用此字元作為常規檔案路徑,因此它不起作用。插入符號 (^) 和重音符號 (`) 是 Windows 版本的反斜杠,取決於您使用的命令列 shell。

看更多:


什麼是惡意軟體 HackTool:Win32/Keygen?如何去除?

什麼是惡意軟體 HackTool:Win32/Keygen?如何去除?

您是否掃描過您的設備並發現它感染了 HackTool:Win32/Keygen?在您使用破解或金鑰產生器啟動進階軟體後,Windows Defender 可能會自動警告您有關此惡意軟體的存在。

在 Windows 10 上建立備份和還原點(Restore Point)的說明

在 Windows 10 上建立備份和還原點(Restore Point)的說明

探索如何在Windows 10上建立和管理還原點,這是一項有效的系統保護功能,可以讓您快速還原系統至先前狀態。

在 Windows 10 中開啟裝置管理員的 15 種方法

在 Windows 10 中開啟裝置管理員的 15 種方法

您可以使用以下 15 種方法輕鬆在 Windows 10 中開啟<strong>裝置管理員</strong>,包括使用命令、捷徑和搜尋。

Windows「顯示桌面」的 10 種超快速方法

Windows「顯示桌面」的 10 種超快速方法

很多人不知道如何快速顯示桌面,只好將各個視窗一一最小化。這種方法對於用戶來說非常耗時且令人沮喪。因此,本文將向您介紹Windows中快速顯示桌面的十種超快速方法。

如何使用 Windows Repair 修復 Windows 錯誤

如何使用 Windows Repair 修復 Windows 錯誤

Windows Repair 是一款有效的 Windows 錯誤修復工具,幫助使用者修復與 Internet Explorer、Windows Update 和其他重要程式相關的錯誤。

如何在 Windows 10 中開啟資料夾選項或檔案總管選項

如何在 Windows 10 中開啟資料夾選項或檔案總管選項

您可以使用檔案總管選項來變更檔案和資料夾的工作方式並控制顯示。掌握如何在 Windows 10 中開啟資料夾選項的多種方法。

有關在 Windows 10 上刪除使用者帳戶的 5 種方法的說明

有關在 Windows 10 上刪除使用者帳戶的 5 種方法的說明

刪除不使用的使用者帳戶可以顯著釋放記憶體空間,並讓您的電腦運行得更流暢。了解如何刪除 Windows 10 使用者帳戶的最佳方法。

如何使用Bootsect /nt60將VBC更新為BOOTMGR

如何使用Bootsect /nt60將VBC更新為BOOTMGR

使用 bootsect 命令能夠輕鬆修復磁碟區引導程式碼錯誤,確保系統正常啟動,避免 hal.dll 錯誤及其他啟動問題。

Windows 11 中的存檔應用程式功能是什麼?應該啟用還是停用它?

Windows 11 中的存檔應用程式功能是什麼?應該啟用還是停用它?

存檔應用程式是一項功能,可以自動卸載您很少使用的應用程序,同時保留其關聯的檔案和設定。了解如何有效利用 Windows 11 中的存檔應用程式功能。

如何在 Windows 10 上為 BlueStacks 5 啟用虛擬化 (VT)

如何在 Windows 10 上為 BlueStacks 5 啟用虛擬化 (VT)

要啟用虛擬化,您必須先進入 BIOS 並從 BIOS 設定中啟用虛擬化,這將顯著提升在 BlueStacks 5 上的效能和遊戲體驗。