关于使用
的类似问题#! /usr/bin/perl
已经回答了。但我认为我的问题略有不同,尽管可能仍然与知情人士相似,因为我对计算缺乏了解。
我的Windows上没有UNIX,所以无法直接测试以下内容,但是虽然我不需要使用shebang系列在Windows下运行Perl,而hello.pl中的shebang行,我仍然可以如果我从
移动,请不要运行该文件c:\Users\XYZ\Desktop\BegPerl
到
c:\Users\XYZ\Desktop
我的脚本存储在
下c:\Users\XYZ\Desktop\BegPerl
我的perl文件夹存储在
下c:\Strawberry\perl\bin\perl.exe
所以我的问题是:
perl hello.pl
下c:\Users\XYZ\Desktop\BegPerl
但在c:\Users\XYZ\Desktop
下不是{{1}}时才会找到hello.pl,即使包含了shebang行?我得到的关于shebang线“目的”的答案是
用于类UNIX系统以查找脚本的可执行文件
所以,我想我的两个问题的答案可能与类UNIX系统和Windows之间的区别有关。
答案 0 :(得分:6)
通过在操作系统注册表中将pl
文件扩展名与perl.exe
相关联。 perl.exe
所在的目录应位于系统PATH
。
两者都应该在安装perl时发生,但如果不是,那就是你需要做的。
答案 1 :(得分:1)
dir/perl script.pl
或/dir/perl script.pl
perl
。不会使用shebang线。* perl
。不会使用shebang线。*
perl script.pl
perl
。不会使用shebang线。* perl
。不会使用shebang线。*
script.pl
%1
将替换为文件名。 %*
将替换为命令行参数。 * - 系统不会使用shebang行。如果不使用的话,Perl实际上会自行解释shebang系列。即使没有使用shebang线,这也允许-w
生效。