命令提示字元 (cmd.exe) 命令列字串限制

Windows XP 支援已結束

Microsoft 於 2014 年 4 月 8 日結束對 Windows XP 的支援。此變更已影響您的軟體更新和安全性選項。 瞭解這對您的意義為何且如何持續受保護。

Windows Server 2003 的支援已於 2015 年 7 月 14 日結束

Microsoft 已於 2015 年 7 月 14 日結束對 Windows Server 2003 的支援。此變更已影響您的軟體更新和安全性選項。 瞭解這對您的意義為何且如何持續受保護。

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:830473
結論
本文將告訴您從命令提示字元,在命令提示字元 (Cmd.exe),您可以使用來解決這項限制的方法使用的字串長度限制。
其他相關資訊
在電腦上執行 Microsoft Windows XP 或更新版本,您可以使用在命令提示字元的字串的最大長度 8191 個字元。在電腦上執行 Microsoft Windows 2000 或 Windows NT 4.0,您可以使用在命令提示字元的字串的最大長度為 2047 個字元。

此限制適用於命令列,其他處理程序,與所有的環境變數擴充繼承的個別環境變數 (如 PATH 變數中)。如果您使用命令提示字元執行批次檔時,這項限制也會適用於批次檔處理中。

範例

下列清單會提供一些範例的這項限制套用至您在命令提示字元中執行的命令及您在批次檔中使用的命令的方式。
  • 在 [命令提示字元中,您在命令提示字元中使用的 followingcommand 行的總長度不得超過 either2047 或 8191 (視您的作業系統) 的字元:
    cmd.exe /k ExecutableFile.exe 參數 1, 參數 2 ... parameterN
  • 在批次檔中,您在批次檔中使用下列命令列的總長度不能包含 (根據您的作業系統) 以上任一 2047 個 or8191 字元:
    cmd.exe /k ExecutableFile.exe 參數 1, 參數 2 ... parameterN
    此限制適用於命令列批次檔中的 arecontained 時執行 batchfile 的情況下,您在使用命令提示字元。
  • 在 [命令提示字元中的總長度EnvironmentVariable1 之後您展開EnvironmentVariable2EnvironmentVariable3 不能包含一個以上的 either2047 或 8191 (視您的作業系統) 的字元:
    c: > 設定 EnvironmentVariable1=EnvironmentVariable2EnvironmentVariable3
  • 在批次檔中,下列的命令列之後的總長度會展開超過 2047年或 8191 個字元 (根據 youroperating 系統) 的命令列 cannotcontain 的環境變數:
    ExecutableFile.exe 參數 1參數 2
  • 即使 Win32 限制對於環境 variablesis 32767 個字元,命令提示字元會忽略任何環境變數從父處理序和已超過其本身的限制 2047年或 8191 的 ofeither 個字元 (視作業系統) 的 areinherited。Formore 的資訊 SetEnvironmentVariable 函式,請造訪下列 Microsoft 網站:

如何解決此限制

若要解決此限制,使用一或多個下列的方法 (視您的情況):
  • 修改需要完整的命令列,所以 thatthey 使用包含參數的資訊,檔案的程式,然後在命令列中包含 thename 的檔案。

    例如,而不是 usingthe ExecutableFile.exe 參數 1 參數 2 ...ParameterN 在批次檔中的命令列修改程式,以使用類似下列的命令列中,命令行位置ParameterFile 為檔案,包含 requiredparameters (參數 1 參數 2...ParameterN):
    ExecutableFile.exe c:\temp\ParameterFile.txt
  • 修改使用環境變數包含少於 8191 或是 2047年個字元 (視您的作業系統) 的大型的環境變數 sothat 的程式。

    例如,如果 PATHenvironment 變數包含以上任一 2047年或 8191 個字元 (asappropriate 到您的作業系統),使用一或多個下列 methodsto 減少字元的數:
    • 使用資料夾和檔案的短名稱。
    • 減少資料夾樹狀目錄的深度。
    • 使 PATH 環境變數中需要較少的資料夾,請將檔案儲存在較少資料夾。
    • 調查可能的方法,您可以使用來減少路徑的相依性,以尋找.dll 檔案。
cmd cmd.exe 「 命令提示字元 」 2048年 2047年 2046年 8192 8191 環境變數路徑命令列

警告:本文為自動翻譯

內容

文章識別碼:830473 - 最後檢閱時間:06/30/2015 10:16:00 - 修訂: 1.0

Windows Server 2012 R2 Standard, Windows Server 2012 R2 Datacenter, Windows Server 2012 R2 Essentials, Windows Server 2012 R2 Foundation, Windows Server 2012 Standard, Windows Server 2012 Datacenter, Windows Server 2012 Essentials, Windows Server 2012 Foundation, Windows Server 2008 R2 Service Pack 1, Windows Server 2008 R2 Standard, Windows Server 2008 R2 Datacenter, Windows Server 2008 R2 Enterprise, Windows Server 2008 R2 Foundation, Windows Server 2008 Service Pack 2, Windows Server 2008 Standard, Windows Server 2008 Datacenter, Windows Server 2008 Foundation, Microsoft Windows Server 2003, Datacenter Edition (32-bit x86), Microsoft Windows Server 2003, Enterprise Edition (32-bit x86), Microsoft Windows Server 2003, Standard Edition (32-bit x86), Microsoft Windows Server 2003, Web Edition, Windows 8.1 RTM, Windows 8.1 Pro, Windows 8.1 Enterprise, Windows 7 Professional, Windows 7 Enterprise, Windows 7 Home Premium, Microsoft Windows XP Home Edition (家用版), Microsoft Windows XP Professional, Microsoft Windows 2000 Advanced Server, Microsoft Windows 2000 Professional Edition, Microsoft Windows 2000 Server, Microsoft Windows NT Server 4.0 Standard Edition, Microsoft Windows NT Workstation 4.0 Developer Edition

  • kbinfo kbmt KB830473 KbMtzh
意見反應