1284194Sdelphij#------------------------------------------------------------------------------ 2284194Sdelphij# $File: perl,v 1.22 2014/04/28 12:04:35 christos Exp $ 3284194Sdelphij# perl: file(1) magic for Larry Wall's perl language. 4284194Sdelphij# 5284194Sdelphij# The `eval' lines recognizes an outrageously clever hack. 6284194Sdelphij# Keith Waclena <keith@cerberus.uchicago.edu> 7284194Sdelphij# Send additions to <perl5-porters@perl.org> 8284194Sdelphij0 search/1 eval\ "exec\ /bin/perl Perl script text 9284194Sdelphij!:mime text/x-perl 10284194Sdelphij0 search/1 eval\ "exec\ /usr/bin/perl Perl script text 11284194Sdelphij!:mime text/x-perl 12284194Sdelphij0 search/1 eval\ "exec\ /usr/local/bin/perl Perl script text 13284194Sdelphij!:mime text/x-perl 14284194Sdelphij0 search/1 eval\ '(exit\ $?0)'\ &&\ eval\ 'exec Perl script text 15284194Sdelphij!:mime text/x-perl 16284194Sdelphij0 search/1 #!/usr/bin/env\ perl Perl script text executable 17284194Sdelphij!:mime text/x-perl 18284194Sdelphij0 search/1 #!\ /usr/bin/env\ perl Perl script text executable 19284194Sdelphij!:mime text/x-perl 20284194Sdelphij0 search/1 #! 21284194Sdelphij>0 regex \^#!.*/bin/perl$ Perl script text executable 22284194Sdelphij!:mime text/x-perl 23284194Sdelphij 24284194Sdelphij# by Dmitry V. Levin and Alexey Tourbin 25284194Sdelphij# check the first line 26284194Sdelphij0 search/1 package 27284194Sdelphij>0 regex \^package[\ \t]+[0-9A-Za-z_:]+\ *; Perl5 module source text 28284194Sdelphij!:strength + 10 29284194Sdelphij# not 'p', check other lines 30284194Sdelphij0 search/1 !p 31284194Sdelphij>0 regex \^package[\ \t]+[0-9A-Za-z_:]+\ *; 32284194Sdelphij>>0 regex \^1\ *;|\^(use|sub|my)\ .*[(;{=] Perl5 module source text 33284194Sdelphij!:strength + 10 34284194Sdelphij 35284194Sdelphij# Perl POD documents 36284194Sdelphij# From: Tom Hukins <tom@eborcom.com> 37284194Sdelphij0 search/1/W \=pod\n Perl POD document text 38284194Sdelphij0 search/1/W \n\=pod\n Perl POD document text 39284194Sdelphij0 search/1/W \=head1\ Perl POD document text 40284194Sdelphij0 search/1/W \n\=head1\ Perl POD document text 41284194Sdelphij0 search/1/W \=head2\ Perl POD document text 42284194Sdelphij0 search/1/W \n\=head2\ Perl POD document text 43284194Sdelphij0 search/1/W \=encoding\ Perl POD document text 44284194Sdelphij0 search/1/W \n\=encoding\ Perl POD document text 45284194Sdelphij 46284194Sdelphij 47284194Sdelphij# Perl Storable data files. 48284194Sdelphij0 string perl-store perl Storable (v0.6) data 49284194Sdelphij>4 byte >0 (net-order %d) 50284194Sdelphij>>4 byte &01 (network-ordered) 51284194Sdelphij>>4 byte =3 (major 1) 52284194Sdelphij>>4 byte =2 (major 1) 53284194Sdelphij 54284194Sdelphij0 string pst0 perl Storable (v0.7) data 55284194Sdelphij>4 byte >0 56284194Sdelphij>>4 byte &01 (network-ordered) 57284194Sdelphij>>4 byte =5 (major 2) 58284194Sdelphij>>4 byte =4 (major 2) 59284194Sdelphij>>5 byte >0 (minor %d) 60284194Sdelphij 61284194Sdelphij# This is Debian #742949 by Zefram <zefram@fysh.org>: 62284194Sdelphij# ----------------------------------------------------------- 63284194Sdelphij# The Perl module Hash::SharedMem 64284194Sdelphij# <https://metacpan.org/release/Hash-SharedMem> defines a file format 65284194Sdelphij# for a key/value store. Details of the file format are in the "DESIGN" 66284194Sdelphij# file in the module distribution. Magic: 67284194Sdelphij0 bequad =0xa58afd185cbf5af7 Hash::SharedMem master file, big-endian 68284194Sdelphij>8 bequad <0x1000000 69284194Sdelphij>>15 byte >2 \b, line size 2^%d byte 70284194Sdelphij>>14 byte >2 \b, page size 2^%d byte 71284194Sdelphij>>13 byte &1 72284194Sdelphij>>>13 byte >1 \b, max fanout %d 73284194Sdelphij0 lequad =0xa58afd185cbf5af7 Hash::SharedMem master file, little-endian 74284194Sdelphij>8 lequad <0x1000000 75284194Sdelphij>>8 byte >2 \b, line size 2^%d byte 76284194Sdelphij>>9 byte >2 \b, page size 2^%d byte 77284194Sdelphij>>10 byte &1 78284194Sdelphij>>>10 byte >1 \b, max fanout %d 79284194Sdelphij0 bequad =0xc693dac5ed5e47c2 Hash::SharedMem data file, big-endian 80284194Sdelphij>8 bequad <0x1000000 81284194Sdelphij>>15 byte >2 \b, line size 2^%d byte 82284194Sdelphij>>14 byte >2 \b, page size 2^%d byte 83284194Sdelphij>>13 byte &1 84284194Sdelphij>>>13 byte >1 \b, max fanout %d 85284194Sdelphij0 lequad =0xc693dac5ed5e47c2 Hash::SharedMem data file, little-endian 86284194Sdelphij>8 lequad <0x1000000 87284194Sdelphij>>8 byte >2 \b, line size 2^%d byte 88284194Sdelphij>>9 byte >2 \b, page size 2^%d byte 89284194Sdelphij>>10 byte &1 90284194Sdelphij>>>10 byte >1 \b, max fanout %d 91