Powershell 重新排列 Windows环境变量

news/2024/9/20 5:35:48/文章来源:https://www.cnblogs.com/NickSmith/p/18413692
最近乱搞环境变量,然后有些重复了,遂写个脚本去重下排序下。

环境变量有长度限制,如果超出了,比如SqlServer相关的,将共同路径单独搞个变量声明下,比如

将其路径手动替换成如下,可大幅压缩变量长度

但是,Powershell脚本在获取环境变量时又会将这些恢复成原路径,建议点击编辑文本,将其拷贝下来,替换脚本中的$list变量值。

好了,注意事项说完了,贴下脚本,建议操作前备份下检查下

# 直接获取变量,如%JAVA_HOME%会显示原文,可能导致长度超过2047导致部分失效
$list = $env:Path -split [System.Environment]::NewLine# 从系统界面拷贝获取示例
# $list="%JAVA_HOME%\bin
# C:\app\YiXinDa\product\21c\dbhomeXE\bin
# %ProgramFiles86%\Common Files\Oracle\Java\javapath
# %windir%\system32
# %windir%
# %windir%\System32\Wbem
# %windir%\System32\WindowsPowerShell\v1.0\
# %windir%\System32\OpenSSH\
# %ProgramFiles86%\Intel\Intel(R) Management Engine Components\DAL
# %ProgramFiles%\Intel\Intel(R) Management Engine Components\DAL
# %MSSQL86%\100\Tools\Binn\"  -split [System.Environment]::NewLine$uniqueArray = $list | Select-Object -Unique
$uniqueArray = $uniqueArray | Sort-Object
$final = New-Object System.Text.StringBuilder("")
foreach ($item in $uniqueArray) {
    $final.Append($item + ";")
    # Write-Host $item
}
Write-Host $final
[Environment]::SetEnvironmentVariable("PATH", $final , "Machine")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/796947.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

英文网站文档-翻译

英文网站文档-翻译 背景: 遇到一些英文文档,需要本地制作成文档查看,且需要改成中文 ‍ 步骤找到应用软件 批量下载文档 执行翻译‍ 涉及到的工具: 1. 整站下载软件:sitSucker(mac 版本) ​​ ‍ 附:一批整站下载工具(下载神器) ‍ ‍ 2. 批量翻译脚本工具 ​​ ‍ 按…

音频转换芯片DP7344兼容CS4344双通道24位DA转换器

产品简介DP7344 是一款完整的 2 通道输出数模转换芯片,内含插值滤波器、Multi-Bit 数模转换器、输出模拟滤波器,并支持大部分的音频数据格式。DP7344 基于一个带线性模拟低通滤波器的四阶 Multi-BitΔ∑调制器,自动检测信号频率和主时钟频率,在 2KHz 和 200KHz 之间自动调节…

45岁大龄程序员自述:我居然还苟在程序人生里,但是已经难以为继

世界那么大,我想去看看...记不清好久没来写随笔发水文吐槽了,这篇文章本来是想在园子里首发的,结果鬼使神差发在了头条里面。这起因就是好 (45岁大龄程序员自述:我居然还苟在程序人生里,但是已经难以为继)原文不会打歌么学打歌阿哥怎摆你怎摆,大江大海江大海 ... 瞧,这个…

【YashanDB知识库】数据库获取时间和服务器时间不一致

本文转自YashanDB官网,具体内容可见[https://www.yashandb.com/newsinfo/7352662.html?templateId=1718516] 【问题分类】功能使用 【关键字】服务器时间、数据库时间 【问题描述】数据库获取的时间和服务器时间不一致。【问题原因分析】YashanDB并没有时区的概念,数据库的时…

Ubuntu 22.04 AX211 驱动 解决

官网的驱动居然只支持Linux6.10以上,但实际上并不这样? 可以去网站 https://launchpad.net/ubuntu/+source/backport-iwlwifi-dkms可以看到有一个20.04.5,点开下载update版本就好了 下载后,在对应文件夹里打开终端,输入sudo dpkg -i backport,按tab补全 它会先删除当前的网…

PbootCMS留言自定义表单怎么调用

在 PBootCMS 中,你可以通过自定义表单和标签来实现留言功能。以下是详细的步骤和示例代码,帮助你在全站任意地方使用留言表单和留言记录列表。 1. 留言提交表单 示例代码<form action="{pboot:msgaction}" method="post">联系人:<input type=&…

【YashanDB知识库】archivelog磁盘满导致数据库abnormal

本文转自YashanDB官网,具体内容可见[https://www.yashandb.com/newsinfo/7352661.html?templateId=1718516] 【问题分类】功能使用 【关键字】磁盘空间满,archivelog日志,archivelog自动清理 【问题描述】数据库状态变更为abnormal,检查V$DIAG_INCIDENT视图,发现提示信息…

喜讯!延迟退休来了

延迟退休终于落地了 😐​ 延迟退休终于落地了 😐 ‍ 官方公告 昨天,官方正式发布了公告: ​ ‍ 具体细则可以看:决定公布!延迟退休年龄对照表详情 → 具体规则请看官方通知,写的很详细,还有很多退休年龄对照表。 简单来说就是,女性 55 岁/58 岁退休,男性 63 岁退休…

QT6跨平台开发

QT6跨平台开发 使用AI技术辅助生成 QT界面美化视频课程 QT性能优化视频课程 QT原理与源码分析视频课程 QT QML C++扩展开发视频课程 免费QT视频课程 您可以看免费1000+个QT技术视频 免费QT视频课程 QT统计图和QT数据可视化视频免费看 免费QT视频课程 QT性能优化视频免费看 免费…

PbootCMS上传缩略图截取尺寸缩小变模糊解决方案

如果你在使用PBootCMS时遇到上传图片后缩略图被自动截取且尺寸变小的问题,可以通过调整配置文件中的缩略图尺寸来解决。具体步骤如下: 步骤找到配置文件:打开 \config\config.php 文件。修改缩略图配置:找到缩略图配置部分,并调整 max_width 和 max_height 的值。具体操作…

PbootCMS多条件筛选“全部”字样样式修改

在PBootCMS中,如果你在使用多条件筛选功能时遇到样式异常的问题,可以通过修改相关代码来解决。具体来说,需要在默认的“全部”选项前后加上<li>标签,使其与其他选项保持一致。 解决方案找到相关文件:找到 \apps\home\controller\ParserController.php 文件。修改代码…

自定义穿梭框封装

后面有时间再来慢慢搞吧,暂且先这样, 有需要的可以把代码考过去继续弄<template><div id="app"><div class="f-transfer flex"><!-- left --><div class="f-left"><div class="f-top flex flex-justify…