英文:
Modify part of the JAVA_HOME folder path using powershell
问题
我有一个应用程序,希望Windows的JAVA_HOME
变量中不包含空格。<br/>
我想要一个高效的PowerShell脚本来获取当前文件夹路径,即<br/>
"C:\program files\java\java.versionxxxx"
,仅将"program files"
转换为"progra~1"
,并相应地更新环境变量。
英文:
I have an application that wants the Windows JAVA_HOME
variable not to contain spaces. <br/>
I would like an efficient PS script to get the current folder path i.e. <br/>
"C:\program files\java\java.versionxxxx"
, convert only "program files"
to "progra~1"
and update the environment variable accordingly.
答案1
得分: 1
这应该能解决问题:
$newPath = $ENV:JAVA_HOME.replace('Program Files','Progra~1')
[System.Environment]::SetEnvironmentVariable("JAVA_HOME", "$NewPath", [System.EnvironmentVariableTarget]::Machine)
如果要修改系统环境变量,需要本地管理员访问权限。如果更改是针对特定用户配置文件的,则将 ::Machine
更改为 ::User
。
英文:
This should do the trick
$newPath = $ENV:JAVA_HOME.replace('Program Files','Progra~1')
[System.Environment]::SetEnvironmentVariable("JAVA_HOME", "$NewPath", [System.EnvironmentVariableTarget]::Machine)
You need local administrator access to modify Machine environment variable. Change ::machine
into ::user
if the change is for a specific user profile
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论