如何用Perl脚本操作系统环境变量呢?
想必很多朋友马上就会想到Perl中提供的$ENV这个特殊的哈希变量,对,在$ENV中完全可以获取到一些系统变量。怎么获取呢?比如想要知道Path这个系统环境变量的内容,我们可以通过$ENV{'Path'} 来获取。如果想设置Path这个环境变量呢,哈,使用$ENV{'Path'}=‘C:\Windows\System32'来设置。想获取所有的环境变量列表也很简单,哈希遍历不就可以了~
其实,本文中真正想问的是,你在通过上述方法设置了一个环境变量后,右击"我的电脑"的属性,选中高级选项卡后查看的Path变量值真的改变了吗?其实,细心的你会发现,完全没变!但千万不要抱怨Perl欺骗了你,它其实并没有欺骗你,而是你没有真正的理解。其实,Path变量可以通过设置$ENV{'Path'}来设置,但是这个设置所引起的改变只是Session级别的,即你程序级别的。如果还不理解的话,可以想象成打开一个CMD后,输入SET Path="C:\\Royen"所引起的效果,即在这个窗口中运行过程中Path环境变量是"C:\\Royen",而你再打开一个Cmd后的新的窗口的Path变量则会发现完全不是”C:\\Royen“;
所以想要真正的添加或者改变一个系统环境变量,我们需要求助于注册表帮忙。只要找到环境变量在注册表中存储的位置即可。
一般系统变量可以在注册表 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment下面可以找到。
实现:
复制代码 代码如下:
my $loc="SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Environment";
my $regkey;
$HKEY_LOCAL_MACHINE->Open($loc,$regkey) || die "Open Registry Fail,Information:$!\n";
$regkey->SetValueEx("PERLLIB",0,REG_SZ,"c:\\staf\\bin;c:\\staf\\bin\\Perl58");
添加环境变量后,记得重启下机器,以使其生效。
操作系统,环境变量
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新动态
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]