Omezení příkazového řádku řetězec příkazového řádku (Cmd. exe)

Překlady článku Překlady článku
ID článku: 830473 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek pojednává o omezení délky řetězce používající z příkazového řádku v příkazovém řádku (Cmd.exe) a metody, které lze obejít toto omezení.

Další informace

V počítačích se systémem Microsoft Windows XP nebo novější, Maximální délka řetězce, který lze použít na příkazovém řádku je 8191 znaky. V počítačích se systémem Microsoft Windows 2000 nebo Windows NT 4.0 Maximální délka řetězce, který lze použít na příkazovém řádku je 2047 znaky.

Toto omezení se vztahuje na příkazovém řádku, jednotlivé proměnné prostředí (například proměnné PATH), které jsou zděděny ostatní procesy a všechny možnosti proměnné prostředí. Pokud použijete příkazový řádek Chcete-li spustit dávkové soubory, omezení platí i pro zpracování dávkového souboru.

Příklady

Následující seznam uvádí některé příklady toho, jak toto omezení platí pro příkazy, které spustíte z příkazového řádku a příkazy, které používáte v dávkový soubor.
  • V příkazovém řádku následující celková délka příkazový řádek, který pomocí příkazového řádku nesmí obsahovat více než jeden 2 047 nebo 8191 znaků (v závislosti na operačním systému):
    cmd.exe /k ExecutableFileexe parametr1, Parametr2 ... parameterN
  • V dávkovém souboru, celková délka příkazu řádek v dávkovém souboru nesmí obsahovat více než buď 2047 nebo 8191 znaků (v závislosti na operačním systému):
    cmd.exe /k ExecutableFileexe parametr1, Parametr2 ... parameterN
    Toto omezení platí pro příkazové řádky, které jsou obsažené v dávkových souborech dávku spustit pomocí příkazového řádku soubor.
  • V příkazovém řádku, celková délkaEnvironmentVariable1 Po rozbaleníEnvironmentVariable2 aEnvironmentVariable3 nesmí obsahovat více než jeden 2 047 nebo 8191 znaků (v závislosti na operačním systému):
    c: > nastavení EnvironmentVariable1=EnvironmentVariable2EnvironmentVariable3
  • V dávkovém souboru, celková délka příkazu řádek po rozbalení proměnné prostředí v příkazovém řádku nelze obsahovat více než 2 047 nebo 8191 znaků (v závislosti na vašem operační systém):
    ExecutableFileexe parametr1Parametr2
  • Přestože omezení pro proměnné prostředí Win32 je 32 767 znaků, příkazového řádku ignoruje všechny proměnné, které jsou zděděno z nadřazeného procesu a jsou delší než vlastní omezení 8191 nebo 2 047 znaků (v závislosti na operačním systému). Pro Další informace o SetEnvironmentVariable funkce, navštivte následující Web společnosti Microsoft:
    http://msdn2.microsoft.com/en-us/library/ms686206.aspx

Jak obejít omezení

Chcete-li obejít omezení, použijte jeden nebo více z následujících metod (podle situace):
  • Upravit programy, které vyžadují dlouhou příkazových řádků tak, aby použít soubor, který obsahuje informace o parametru a poté je zahrnout název souboru v příkazovém řádku.

    Například namísto použití na ExecutableFileexe Parametr1 Parametr2 ...ParameterN příkazový řádek v dávkovém souboru změnit program, použijte příkaz řádek, který je podobný následující příkazový řádek, kdeParameterFile soubor, který obsahuje požadované parametry)parametr1 Parametr2...ParameterN):
    ExecutableFilec:\temp\ exeParameterFiletxt
  • Upravit programy, které používají proměnné prostředí velké tak proměnné prostředí obsahují méně než 2 047 nebo 8191 znaků (v závislosti na operačním systému).

    Například pokud cesta Proměnná prostředí obsahuje více než 2 047 nebo 8191 znaky (jako vhodné pro váš operační systém), použijte některou z následujících metod snížit počet znaků:
    • Použijte kratší názvy složek a souborů.
    • Zmenšete hloubku stromy složek.
    • Ukládání souborů v méně složek tak, aby méně složek požadované v proměnné prostředí PATH.
    • Prozkoumat možné metody, které lze použít k snížit závislost cesta pro hledání souborů DLL.

Vlastnosti

ID článku: 830473 - Poslední aktualizace: 22. května 2011 - Revize: 3.0
Informace v tomto článku jsou určeny pro produkt:
  • 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
  • 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
Klíčová slova: 
kbinfo kbmt KB830473 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:830473

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com