Windows10无管理员权限关联.pl文件到Perl实现直接运行脚本
无管理员权限Windows下Perl脚本直接运行配置方案
基础配置(实现直接输入脚本名运行)
如果你还没完成基础的直接运行设置,可以按以下操作,全程不需要管理员权限:
- 按Win+R执行命令
rundll32 sysdm.cpl,EditEnvironmentVariables,直接打开当前用户的环境变量编辑页面 - 在用户变量区域找到Path项,新增条目
C:\Perl520\Perl64\bin,保存后所有cmd窗口需要重启才能生效 - 同样在用户变量区域找到PATHEXT项(如果不存在就新建该变量),在变量值末尾追加
;.PL,保存后重启cmd,后续可以直接输入Test.pl甚至省略后缀输入Test运行脚本
修复带参数运行报错问题
你目前遇到的参数传递失败问题,根源是.pl后缀的关联规则没有配置参数传递逻辑,按以下步骤修改当前用户注册表即可,不需要管理员权限:
- 按Win+R执行
regedit打开注册表编辑器,定位到路径HKEY_CURRENT_USER\Software\Classes - 找到
.pl项,不存在的话右键新建项命名为.pl,双击右侧的「默认」值,设置数值数据为PerlScript - 回到
Classes路径下,找到PerlScript项,不存在则新建,依次在该项下新建子项shell→open→command,最后定位到command项 - 双击右侧的「默认」值,填入数值数据
"C:\Perl520\Perl64\bin\perl.exe" "%1" %*,注意所有引号都要保留,确认后关闭注册表 - 重启所有cmd窗口,再执行
Test.pl C:\input.txt即可正常传递参数
零配置替代方案
如果你不想修改注册表,可以直接为Perl脚本创建同名批处理wrapper,比如在Test.pl同目录下新建Test.bat,写入以下内容:
@echo off "C:\Perl520\Perl64\bin\perl.exe" "%~dpn0.pl" %*
之后直接执行Test C:\input.txt即可正常运行,不需要修改任何系统配置。
内容的提问来源于stack exchange,提问作者Sheograph
相关产品推荐
相关产品推荐

