1#------------------------------------------------------------------------------ 2# $File: perl,v 1.17 2011/12/16 16:24:40 rrt Exp $ 3# perl: file(1) magic for Larry Wall's perl language. 4# 5# The `eval' lines recognizes an outrageously clever hack. 6# Keith Waclena <keith@cerberus.uchicago.edu> 7# Send additions to <perl5-porters@perl.org> 80 search/1/w #!\ /bin/perl Perl script text executable 9!:mime text/x-perl 100 search/1 eval\ "exec\ /bin/perl Perl script text 11!:mime text/x-perl 120 search/1/w #!\ /usr/bin/perl Perl script text executable 13!:mime text/x-perl 140 search/1 eval\ "exec\ /usr/bin/perl Perl script text 15!:mime text/x-perl 160 search/1/w #!\ /usr/local/bin/perl Perl script text executable 17!:mime text/x-perl 180 search/1 eval\ "exec\ /usr/local/bin/perl Perl script text 19!:mime text/x-perl 200 search/1 eval\ '(exit\ $?0)'\ &&\ eval\ 'exec Perl script text 21!:mime text/x-perl 220 search/1 #!/usr/bin/env\ perl Perl script text executable 23!:mime text/x-perl 240 search/1 #!\ /usr/bin/env\ perl Perl script text executable 25!:mime text/x-perl 26 27# by Dmitry V. Levin and Alexey Tourbin 28# check the first line 290 search/1 package 30>0 regex \^package[\ \t]+[0-9A-Za-z_:]+\ *; Perl5 module source text 31# not 'p', check other lines 320 search/1 !p 33>0 regex \^package[\ \t]+[0-9A-Za-z_:]+\ *; 34>>0 regex \^1\ *;|\^(use|sub|my)\ .*[(;{=] Perl5 module source text 35 36 37 38# Perl POD documents 39# From: Tom Hukins <tom@eborcom.com> 400 search/1/W \=pod\n Perl POD document text 410 search/1/W \n\=pod\n Perl POD document text 420 search/1/W \=head1\ Perl POD document text 430 search/1/W \n\=head1\ Perl POD document text 440 search/1/W \=head2\ Perl POD document text 450 search/1/W \n\=head2\ Perl POD document text 46 47# Perl Storable data files. 480 string perl-store perl Storable (v0.6) data 49>4 byte >0 (net-order %d) 50>>4 byte &01 (network-ordered) 51>>4 byte =3 (major 1) 52>>4 byte =2 (major 1) 53 540 string pst0 perl Storable (v0.7) data 55>4 byte >0 56>>4 byte &01 (network-ordered) 57>>4 byte =5 (major 2) 58>>4 byte =4 (major 2) 59>>5 byte >0 (minor %d) 60