Tob*_*fin 15 path environment-variables windows-10
系统属性
这个环境变量太大了。此对话框允许设置长达 2047 个字符的值。
我使用/已经使用了很多软件,结果我的 PATH 增长了。当我尝试添加新路径时,我收到上述消息。作为一种解决方法,我正在编辑我的用户路径,但不想这样做。
har*_*ymc 17
Microsoft 的文档说 Windows 上的环境变量仅限于 32,767 个字符(链接),但没有说明如何创建这么长的变量。
这里的问题是 Windows 提供的工具都有其局限性:
set 和 setx 命令将值截断为 1023 个字符。
直接在注册表中设置
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
失败,因为 regedit 会在 2047 个字符之后截断输入的字符串。
所以你必须使用变通方法。
使用短文件夹名称
您可以使用 来查看此类名称dir /x /ad。以下示例显示,在我的计算机上,文件夹Program Files (x86)
可能被替换为PROGRA~2:
使用嵌入式环境变量
如果你有:
C:\this_is_a\long_path\that_appears\in_multiple_places\subdir1
C:\this_is_a\long_path\that_appears\in_multiple_places\subdir2
Run Code Online (Sandbox Code Playgroud)
然后您可以创建一个新的环境变量,例如:
SET P1=C:\this_is_a\long_path\that_appears\in_multiple_places
Run Code Online (Sandbox Code Playgroud)
之后你的原始路径变成
%P1%\subdir1
%P1%\subdir2
Run Code Online (Sandbox Code Playgroud)
您还可以通过创建一个新变量将 PATH 一分为二,例如NEWPATH,包含多余路径并附;%NEWPATH%加到 PATH 变量。
避免使用 setx 命令, 因为它会直接解析嵌入的环境变量,并且生成的字符串将再次过长。
使用 PowerShell 脚本设置 PATH
PowerShell 直接调用 Windows API,因此可以接近环境变量 32,767 个字符的理论限制。
该脚本可能包含以下命令:
[Environment]::SetEnvironmentVariable("Path", $longpath, "Machine")
Run Code Online (Sandbox Code Playgroud)
小智 8
我试过这个。即使您面临这个问题,在遵循 @harrymc\xe2\x80\x99s 答案后它对我有用,请尝试这个。
\npath2使用 中的所有内容创建一个新的path。
现在放置%path2%在路径内
所以现在%path2%; %path3%; %path4%; ...等等。
| 归档时间: |
|
| 查看次数: |
15323 次 |
| 最近记录: |