我有多个 Perl 脚本,其中 shebang 行已过时。也就是说,shebang 指向 Perl 的旧版本。
每条路径旧:
#!/data/oracle10.0/perl/bin/perl
Run Code Online (Sandbox Code Playgroud)
新版本的 Perl 已发布
#!/data/**oracle11.0**/perl/bin/perl
Run Code Online (Sandbox Code Playgroud)
我已将 perl 命令软链接到新版本 perl 的位置。
perl -> /data/oracle11.0/perl/bin/perl
Run Code Online (Sandbox Code Playgroud)
现在,shebang 指向旧版本,perl 命令指向新版本。
所以,当我这样做时perl sample.pl,shebang 就会被忽略。
我编写了一些示例脚本来查看这一点。当我使用该命令时,shebang 行似乎被忽略了perl。但我记得旧版本的 perl 并非如此(Shebang 被认为是超过perl命令的)。
所以我的问题是,新版本的 perl(5.10)和旧版本(5.8)对于 shebang 行是否有不同的行为?如果将 perl 命令传递给新版本的 Perl,它会忽略 shebang 行吗?