NppExec - NppExec 未知的命令,已设置环境变量

NppExec - Command unkown to NppExec, Environment variable is set

我正在尝试通过 Notepad++ 和 NppExec 执行一个小的 perl6 脚本。 我的系统是 Windows 10 并且我将 PATH 变量正确设置为 C:\rakudo\bin perl6 可执行文件所在的位置。当我通过普通控制台执行脚本时:

perl6 "path/to/script.pl6" 

它可以毫无问题地执行。

但是,当我在 NppExec 中执行完全相同的命令时,如下所示:

CD $(CURRENT_DIRECTORY)
perl6 "$(FILE_NAME)"

我收到错误:CreateProcess() 失败,错误代码 2:系统找不到指定的文件。

显然,命令 "perl6" 对 NppExec 是未知的... 我的问题:如何让 NppExec 知道 PATH 变量,或者这个问题是否与其他问题有关?

我通过输入 perl 可执行文件的完整路径解决了这个问题。所以我的 NppExec 命令现在看起来像:

CD "$(CURRENT_PATH)"
"C:\rakudo\bin\perl6.bat" "$(FILE_NAME)"

并且脚本得到正确执行。

也可以使用环境变量。必须添加文件结尾:

CD "$(CURRENT_PATH)"
perl6.bat "$(FILE_NAME)"

同样有效。

您可以使用以下 NppExec 命令显示 NppExec 知道的路径:

env_set PATH

因此您可以检查 perl 的路径是否存在。 运行 perl 的一种相当简单的方法是在原始脚本中使用 perl6 的完整路径。顺便说一句,你可以使用 $(FULL_CURRENT_PATH)

看起来 NppExec 足够聪明,可以在环境 PATH 中搜索应用程序。但是它不会自动添加 .bat 扩展名。在我的例子中 添加 .bat 解决了问题 。所以这有效:

gradle.bat