tes*_*st8 5 windows path-variables
在windows系统中,变量环境中不同路径的顺序PATH定义了解析优先级:
例子:
C:/Dir1;C/Dir2C:/Dir1/test.exe和C:/Dir2/test.exetest.exe将解析为C:/Dir1/test.exe这很好,但在 Windows 中有两个 PATH,用户路径和系统路径。并且有以下串联:<system-path>;<user-path>
因此,系统路径似乎总是优先于用户路径。
我错了吗 ?
问候,
该函数GetEnvironmentVariable可以分别获取用户变量和系统变量。因此,您可以将以下设置添加到您的中$PROFILE,通常是$env:USERPROFILE\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1:
$env:PATH = [Environment]::GetEnvironmentVariable("Path", "User") + ';' + [Environment]::GetEnvironmentVariable("Path", "Machine")
Run Code Online (Sandbox Code Playgroud)
或者,如果您想在 current 前面添加一些路径$env:PATH,而不是在系统路径之前移动整个用户的路径,您可以添加:
$env:PATH = 'C:\Dir1;' + $env:PATH # note there's a semicolon
Run Code Online (Sandbox Code Playgroud)
参考这个答案:
如果您只需要它适用于命令提示符会话,请创建一个 profile/init 批处理文件并在注册表中配置它,请参阅如何在 Windows 中的命令提示符启动时运行命令。例如,
Run Code Online (Sandbox Code Playgroud)reg add "HKCU\Software\Microsoft\Command Processor" /v AutoRun ^ /t REG_EXPAND_SZ /d "%"USERPROFILE"%\init.cmd" /f然后只需修改该批处理文件中的 PATH 即可。例如,
Run Code Online (Sandbox Code Playgroud)SET USER_PATH=c:\whatever SET PATH=%USER_PATH%;%PATH%
| 归档时间: |
|
| 查看次数: |
1141 次 |
| 最近记录: |