3

我正在查看 CPAN Perl 模块的源代码,Digest::Perl::MD5并注意到它有 she bang #! /usr/bin/false。这是前几行Digest/Perl/MD5.pm...

#! /usr/bin/false
#
# $Id: MD5.pm,v 1.19 2004/02/14 02:25:32 lackas Exp $
#

package Digest::Perl::MD5;
use strict;
use integer;
use Exporter;
use vars qw($VERSION @ISA @EXPORTER @EXPORT_OK);

... Digest::Perl::MD5 的作者为什么要使用#! /usr/bin/false? 如果我的系统没有/usr/bin/false但有/bin/false呢?

4

1 回答 1

9

为什么 Digest::Perl::MD5 的作者要使用 #! /usr/bin/假?

因此,如果有人试图将模块用作可执行文件(Perl $ ./MD5.pm),它会安静地死掉,而不是尝试将模块作为程序执行。

如果我的系统没有 /usr/bin/false 但有 /bin/false 怎么办?

然后它会大声地死去,抱怨它找不到/usr/bin/false是否有人尝试过。

于 2013-09-12T16:59:31.013 回答