PERLFAQ1 7
PERLFAQ1
NAMEDESCRIPTION æè¿°
AUTHOR AND COPYRIGHT
è¯è
NAME
perlfaq1 - æå³ Perl çä¸è¬é®é¢ (2003/11/23 08:02:29)
DESCRIPTION æè¿°
æå³ Perl çä¸è¬çï¼éææ¯å±æ¬¡çé®é¢
What is Perl? ä»ä¹æ¯ Perl
Perlæ¯ä¸ä¸ªé«é¶ç¨å¼è¯è¨ï¼ç± Larry Wallåå¶ä»è®¸å¤äººæåï¼èåäºè®¸å¤è¯- è¨çç¹æ§ãå®ä¸»è¦æ¯ç±æ æä¸å¨ç Cè¯è¨ï¼å¶æ¬¡ç± sedãawkï¼UNIX shell åè³å°åæ°ç§å¶ä»çå·¥å·åè¯è¨ææ¼åèæ¥ãPerl对 processãæ¡£æ¡ï¼åæå- æå¾å¼ºçå¤çã忢è½åï¼å æ- ¤ä¸¾å¡æå³å¿«éåå设计ãç³»ç»å·¥å·ã软ä½å·¥å·ãç³»ç»ç®¡çãèµæåºè¿ç»ãå¾åç¨å¼è®¾è®¡ãç½è·¯è¿ç»ï¼å WWWç¨å¼è®¾è®¡çä¹ç±»çä»»å¡ï¼é½ç¹å« éåç¨ Perlæ¥åãè¿äºç¹é¿ä¸ä½ä½¿ Perlæä¸ºç³»ç»ç»´æ¤ç®¡çèå CGIä½èçå® å¿ï¼å°±è¿æ°å¦å®¶ãéä¼ å- ¦å®¶ãæ°é»ä»ä¸èï¼çè³ä¼ä¸ç®¡çèä¹é½ç¨ Perlï¼æä»¥æè®¸æ¨ä¹è¯¥ç¨ã
è°å¯¹ Perl æä¾æ¯æï¼è°å¼åäºå®ï¼ä¸ºä»ä¹å®æ¯èªç±çï¼
Perlèªç±å¼æ¾çåè¡æ¹å¼è¦å½åäºåç§åç Internetçä¼ ç»æååå¶ä½è Larry WallãPerlæ¯ç±ä½¿ç¨èæä¾æ¯æ´ãç°å¨ Perlçæ ¸å¿ãæ åç¨å¼åºãéæ©æ§å®è£ç模ç»ï¼ä»¥åæ¨ç°å¨æ- £å¨é读ç使ç¨è¯´æé½åºèªäºä¹å¡è乿ã详æè¯·è§ perlåå§ç åè¡ç䏿éç READMEæ¡£æ¡åºé¨çç§äººæ³¨è®°ã
å¼å¾ä¸æçæ¯ï¼æ ¸å¿åå±å°ç»ï¼ç§°ä¸º Perl Portersï¼çæåæ¯ä¸ç¾¤é«åº¦ç- æå¥ç®ç人ä»ï¼å¨å¿æå¥åå±åºæ¯æ¨æè½æ³åãç¨é±è½ä¹°å¾å°è¿è¦æ´å¥½çå费软ä½ãæ¨å¯ç»ç± http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/ å http://archive.develooper.com/perl5-porters@perl.org/ æèæ°é»æå¡å¨ nntp://nntp.perl.org/perl.perl5.porters æå®ç web çé¢ http://nntp.perl.org/group/perl.perl5.porters , ä¹å¯ä»¥è®¢éé®ä»¶å表 perl5-porters-request@perl.org (没æä¸»é¢çç©ºæ¶æ¯ä¹æ¯å¯ä»¥ç) åå¾å³äºæ°è¿åå±è®¡ç» çä¿¡æ¯ã
尽管 GNU计ç»å° Perl忬å¨å®çåè¡ä¸ï¼ä½æ¯æ²¡æå«ãGNU Perlãè¿æ ·çä¸è¥¿ã Perlæ¢éèªç±è½¯ä½åºé伿åï¼äº¦éç±å¶è´è´£ç»´æ¤ãPerlçåè¡æ¡æ¬¾åæ¶ä¹è¾ GNUè½¯ä½æ´æ¥å¾å¼æ¾ã
å¦ææ¨æ¿æï¼æ¨å¯ä»¥è´ä¹°å䏿§ç Perlæ¯æ´ãä½å¯¹å¤§å¤æ°ä½¿ç¨èæ¥è¯´ï¼éæ- £å¼æ§çæ¯æ´é常已ç¸å½è¶³å¤ã详æè¯·è§ãå°åªéå¯ä¹°å°å䏿§ç Perlæ¯æ´ãä¸é®çå çã
Which version of Perl should I use? æè¯¥ç¨åªä¸ä¸ªçæ¬ç Perlï¼
æ¨ç»å¯¹è¯¥ç¨ç¬¬äºçã第åçä¸ä½èæ§ãåè½è¾å±éï¼èä¸å·²ç»ä¸åç»´æ¤äºã宿å䏿¬¡çä¿®æ- £ (4.036)æ¯å¨ 1992å¹´ãPerlææ°çé产åè¡çæ¬æ¯5.8.2 (使¯ 5.005_03 å 5.6.2 ä¹è¢«æ¯æ)ãçå°æ¨è¯»è¿ç¯æç« æ¶ï¼æä»¬å¯è½å·²ç»ååè¡äºå 个æ- £å¼çé¤éçæ¬ï¼åæ¶å¤§æ¦åä¼æäºæ¿ä¸ä¸ç è·¯çå®éªçåºæ¥ãæ¬æç±æ¤å¼å§å¡æå Perlè¯- è¨ï¼ç以ç®åçé产åè¡ä¸ºåï¼é¤éå¦å¤ç¹å«æ³¨æãææ 5.004 ä¹åççæ¬é½æ buffer æº¢åºæ¼æ´ï¼æ¯é常严éçé®é¢ã
perl4 å perl5 å代表ä»ä¹ï¼
perl4 å perl5 æ¯å¯¹ Perlç¨å¼è¯è¨ç两个ä¸åçæ¬çéæ- £å¼ç§°å¼ï¼å 为说ãperl5ãè¦æ¯è¯´ã第 5(.004)çç Perlãè¦æ¥å¾ç®åã使¯æäºäººè¯¯å°å¶ä¼æä¸ºï¼perl5æ¯ä¸ä¸ªåç¬çè¯è¨ï¼è¿æ¯ä¸æ- £ç¡®çãperl5åªä¸è¿æ¯å¯¹ç¬¬äºä¸ªä¸»è¦åè¡çæ¬ï¼1994å¹´ 10 æï¼å¸¸ç¨çç§°å¼ç½¢äºãå°±å perl4æ¯æç¬¬å个主è¦åè¡ï¼1991å¹´ 3 æï¼ï¼è¿æ perl1ï¼1988å¹´ 1æï¼ãperl2ï¼1988å¹´ 6 æï¼ï¼ä»¥å perl3ï¼1989å¹´ 10 æï¼ã
5.0çåè¡åºæ¬ä¸æ¯ä»é¶å¼å§ï¼ææç¨å¼çå®å¨éæ°åè¿ççæ¬ãå®å·²ç»è¢«æ¨¡ç»åãç©ä»¶å¯¼ååãå¾®è°ãç²¾ç®åï¼åæçåï¼ä»¥è´ç¨å¼çåä¹å·²åå¾å忥çä¸ç¸åäºãå°½ç®¡å¦æ- ¤ï¼ä½¿ç¨ä»é¢å¤§è´ä¸ä»ç¶ç¸åï¼èä¸åååççæ¬ä¹é´ä¿æäºå¾é«ç ä¸è´æ§ãåè§ perltrap ä¸ç "Perl4 to Perl5 Traps" .
为äºé¿åãperl5æ¯ä»ä¹è¯- è¨ï¼ãè¿ç±»çæ··æ·ï¼æäºäººç´¢æ§å®å¨é¿åãperl5ãï¼èåç¨ãperlãæ¥æç§°æè¿ç perlçæ¬ãå¶å®ç¨ä¸çè¿ä¹ç´¯å°±æ¯äºã
åè§ perlhist ä¸ Perl çæ¬çåå²
What is Ponie? ä»ä¹æ¯ Ponie
At The O’Reilly Open Source Software Convention in 2003, Artur Bergman, Fotango, and The Perl Foundation announced a project to run perl5 on the Parrot virtual machine named Ponie. Ponie stands for Perl On New Internal Engine. The Perl 5.10 language implementation will be used for Ponie, and there will be no language level differences between perl5 and ponie. Ponie is not a complete rewrite of perl5.
For more details, see http://www.poniecode.org/
What is perl6?
At The Second O’Reilly Open Source Software Convention, Larry Wall announced Perl6 development would begin in earnest. Perl6 was an oft used term for Chip Salzenberg’s project to rewrite Perl in C ++ named Topaz. However, Topaz provided valuable insights to the next version of Perl and its implementation, but was ultimately abandoned.
If you want to learn more about Perl6, or have a desire to help in the crusade to make Perl a better place then peruse the Perl6 developers page at http://dev.perl.org/perl6/ and get involved.
Perl6 is not scheduled for release yet, and Perl5 will still be supported for quite awhile after its release. Do not wait for Perl6 to do whatever you need to do.
"We’re really serious about reinventing everything that needs reinventing." --Larry Wall
Perlçåå±å·²ç¨³å®äºåï¼
èåäºé¤éåæ°åè½çé产åè¡å¨æ¨åºåçç»è¿å¹¿æ³çæµè¯ãèª 5.000åè¡ä»¥æ¥ï¼æä»¬å¹³åä¸å¹´æåºç䏿¬¡é产åè¡ã
Larry å Perlåå±å°ç»ææ¶åä¼ä¿®æ¹è¯è¨çæ ¸å¿é¨åï¼ä½æ»æ¯å°½ä¸ååé让æ°ç åæ§çä¿æä¸è´ãå æ¤ï¼å°½ç®¡ä¸æ¯ææç perl4 scriptsé½è½å¨ perl5 ä¹ä¸è·å¾å¤©è¡£æ ç¼ï¼å å级èå¯¼è´æç§ååçæ¬ç perlæåçç¨å¼æ æ³ä½¿ç¨çæå½¢å ä¹ä¸æ¾åçï¼é¤é该ç¨å¼åèµå·²ç»è¢«å»é¤ç bugsï¼æä½¿ç¨äºæå°æ°æ°å å¥çæä»¤æ¥ å½åï¼ã
Perlé¾å¦åï¼
Perlä¸ä½å®¹æä¸æï¼ä¹å®¹æç»§ç»å¦ä¸å»ãå®çèµ·æ¥å大夿°æ¨å¯è½å·²æ¥è§¦è¿çè¯- è¨ä¸æ ·ãæä»¥å¦ææ¨åªåè¿ C ç¨å¼ãæ awk scriptãshell scriptï¼æçè³åªæ¯ Excelç macro å®ï¼æ¨å·²ç»å¨åè·¯äºã
大夿°çä»»å¡åªéè¦ Perlè¯è¨çä¸å°é¨åå³å¯å®æãåå± Perlç¨å¼ç座å³é- 峿¯ãä¸åªä¸ç§æ¹æ³å¯ä»¥è¾¾å°ãï¼TMTOWTDI; There’s More Than One Way To Do It, ææ¶è¯»ä½ãtime todayãï¼ãå æ¤ï¼Perlçå¦ä¹ æ²çº¿æ¯æ¢å¹³ï¼æå- ¦ï¼ä¸é¿çï¼å¦ææ¨è¦çè¯ï¼æä¸å¤§å 夿¨å¦çï¼
æåï¼Perlï¼é常ï¼ç®æ¯è§£éæ§è¡çè¯è¨ãä¹å°±æ¯è¯´æ¨åäºç¨å¼åä¸éç»ç±ä¸éä¸- é´çç¼çè¿ç¨å³å¯æµè¯ï¼è¿è®©æ¨å¯ä»¥å¾å¿«ãå¾å®¹æå°æµè¯åé¤éãè¿ä¸ªæ¹ä¾¿è¯éªçç¹æ§å让å- ¦ä¹ æ²çº¿å徿´å å¹³å¦ã
æå©äºä¿®ä¹ Perl çä¸äºäºï¼UNIXç»éªã对å 乿¯ä»»ä½ä¸ç§ç¨å¼è¯- è¨çç»éªãäºè§£ regular expressionsï¼æ- £è§è¡¨ç¤ºæ³ï¼ï¼ä»¥åç徿æäººåçç¨å¼çè½åãå¦ææ¨æä»ä¹æ³ç¨ Perlæ¥åçäºï¼é£ä¹å¯è½å·²ç»æå人åè¿äºï¼èä¸å®ä¾é常å¯åè´¹åå¾ãè¿æå«å¿äºæ°ç Perl模ç»ã模ç»å¨è¿ä»½ FAQ ç第åé¨åæè¯¦ç»ç讨论ï¼è¿æãå«å¿äºæ¨ç好æåã CPANï¼è¿ä¼å¨ç¬¬äºé¨åè°å°ã
How does Perl compare with other languages like Java, Python, REXX , Scheme, or Tcl?
Perl卿äºå°æ¹æ¯è¾å¥½ï¼æäºå°æ¹è¾å·®ã精确å°è¯´å°åºåªäºæ¹é¢å¥½æåé常è§ä¸ªäººå好èå®ï¼æä»¥å¨æ°é»è®¨è®ºç¾¤ä¸- é®è¿ç§é®é¢å¾å¯è½ä¼æèµ·ä¸åºæ¯«æ 建设æ§ç壿ã
è¦æ¯è¾åè¯è¨çå¼åæå¥½çæ¹æ³æ¯è¯çç¨ä¸åçè¯è¨ååè½ç¸åçç¨å¼ãåç¨å¼è¯- è¨é½åæå±äºå®ä»¬åèªçæ°é»è®¨è®ºç¾¤ï¼æ¨å¯ä»ä¸å- ¦ä¹ ï¼ä½å¸ææ¨ä¸æ¯å»åäººè¾¨è®ºåµ æ¶çï¼ã
å¦æè¿æ¯ä¸å¬ååçè¯ï¼å¯ä»¥å»ç http://language.perl.com/versus/ çè¯è¨æ¯è¾
æå¯ä»¥ç¨ Perlæ¥åãæç§å·®äºãåï¼
Perlæè¶³å¤çå¼¹æ§åæ©åæ§ï¼ä»åªéè¦åçç- ä¸è¡çæ¡£æ¡å¤çå·¥ä½å°å¤æçç³»ç»ï¼å乿²¡æä»ä¹åä¸å°çã对æäºäººæ¥è¯´ï¼Perlçæ¯æ¿æ¥åå shellç¨å¼ççæ³æ¿ä»£åãå¶ä»äººåç¨é«é¶ç Perlæ¥æ¿ä»£å¤ç许å¤ååéè¦ç¨ Cæ C++ ä¸ç±»çä½é¶è¯è¨æ¥è¾¾å°çç¨å¼ãåªäºå·®äºå³å®è¦ç¨ Perlæ¥å¤çï¼è¿ä¸åé½å¾çæ¨ï¼æè®¸è¿ææ¨çç»ç...ï¼ã
å¦ææ¨æä¸ä¸ªæä¾ APIçç¨å¼åºçè¯ï¼æ¨å¯ç¨ Cæ C++æ¥åä¸ä¸ª Perl 延伸ï¼ç¶å便å¯éè¿å®å°ç¨å¼åºä¸çä»»ä½ä¸é¨åå¨æè½½å¥æ¨ç Perl主ç¨å¼ä¸- ãæ¨ä¹å¯ä»¥ åè¿æ¥ï¼ç¨ Cæ C++æ¥å主ç¨å¼ï¼ç¶å以峿¶å¨æè½½å¥çæ¹å¼æå¥ä¸äºPerlç¨å¼çï¼äº§çä¸ä¸ªå¨å强大çåºç¨ç¨å¼ãåè§ perlembed.
è¯è½å¦æ¤ï¼å¯¹è§£å³æäºç¹å®çé®é¢ï¼ä½¿ç¨å°åãä¸ç²¾ï¼ä¸ä¸ºç¹æ®ç¨é设计çè¯- è¨æ» æ¯æ¯è¾æ¹ä¾¿çã Perlç设计æ¯å°½åå°æ»¡è¶³åç§ä¸å人çéè¦ï¼åèä¸ç¹å«åé¢ä»»ä½äººãè³äºç¹æ®åè½è¯- è¨çä¾åï¼é便举两个ï¼è¬å¦ prolog å matlab 便æ¯ã
åªäºåºåä¸ä¸éåç¨ Perlï¼
彿¨çä¸»ç®¡ç¦æ¢çæ¶å -- ä¸è¿è¯·å¡å¿èèæä»ä»¬æ¢æ :-)ã
说ççï¼å¦ææ¨å·²ç»æç¨å¦ä¸ä¸ªè¯- è¨åæçåºç¨ç¨å¼ï¼èä¸åå¾å¾å¥½ï¼çæ¶åï¼æèæ¯å·²ç»ææ¿æäºç¹å®çå·¥ä½è®¾è®¡çè¯- è¨ï¼ä¾å¦ï¼prolog, makeï¼ï¼è¿ä¸ªæ¶åå°±ä¸éè¦ç¨ Perlã
ç±äºç§ç§åç´ï¼Perl大æ¦ä¸å¤ªéåæ¿æ¥å峿¶ååµå¼ç³»ç»ãå±äºä½å±çº§çä½ä¸ç³»ç»åå±å·¥ä½ï¼ä¾å¦å¨è¾¹è®¾å¤ç driversæç¯å¢è½¬æ¢çã夿çå¤çº¿å±ç¨è®°å¿ä½åºç¨ç¨å¼ï¼æé常大çåºç¨ç¨å¼ãæ¨ä¼åç° Perl æ¬èº«ä¾¿ä¸æ¯ä»¥ Perlåæçã
ååºçç Perl纯çç¼è¯å¨æè®¸å¯å¸®å¿å»é¤ä¸äºä¸è¿°çéå¶ï¼ä½æ¨è¦äºè§£ï¼Perl卿¬è´¨ä¸ä»æ¯ä¸æ´»æ§åæ°è¯- è¨ (dynamically typed language)ï¼èéåºæ§åæ° (statically typed)ãåªè¦æ¨ä¸å°æ ¸çµåæèç§ææ¯çè§å¨æç¨çç¨å¼æ¾å¿å°ç¨ Perlæ¥åï¼æ¨èªç¶å°±ä¸ä¼é¯ç¥¸éæ®ãè¿æ · Larryæä¸ä¹å¯ä»¥ç¡å¾å®ç¨³äºäº :-)ã
ãperlãåãPerlãæä»ä¹ä¸åï¼
äºèå·®ä¸ä¸ªä½åãåï¼æ¨ä¸æ¯è¯´å¨ ASCIIä¸çå·®å«åï¼ :-) Larryç°å¨ç¨ãPerlãæ¥ä»£è¡¨è¯è¨æ¬èº«ï¼è以ãperlãæ¥è¡¨ç¤ºè¯¥è¯- è¨çä½ç°ï¼å³ç®åçè§£è¯å¨ãå æ¤ï¼ä½èæå¥å¹½é»å°è¯è¯´ï¼ãåªæ perlå¯ä»¥è§£è¯ Perlããè¦ä¸è¦éµç§è¿ä¸ªç¨æ³æ¯æ¨çèªç±ã举ä¸ååçè¯ï¼æä»¬å¯ä¾æ·ç»è«è¦å°è¯´ãawk å perlãè¿æãPython å Perlãï¼ä½å´ä¸å¯å°ãawk å Perlãææ¯ãPython å perlãæå¨ä¸èµ·ã
Perlç¨å¼åºç®æ¯ programè¿æ¯ scriptï¼
齿 æè°ãä»åå¼ç©ç¬å°è¯´ï¼"èæ¬ script æ¯ä½ 让æ¼åæ¥æ¼çãç¨åº program æ¯ä½ ç»è§ä¼çã"
æåï¼èæ¬æ¯æåçæ®éç交äºçå½ä»¤åºåï¼-- ä¹å°±æ¯è¯´ï¼ä¸ä¸ªå¯¹è¯èæ¬ï¼ç±»ä¼¼ UUCP æ PPP 对è¯èæ¬æèä¸ä¸ª expect èæ¬ï¼å¯ä»¥å¾å¥½å°å¤çä¸äºå°äºï¼ç±»ä¼¼å¨åºç¨ç¨åºå¯å¨ä¹åè¿è¡ä¸äºä¿è®¾ç½®ç- çï¼ç±»ä¼¼ .cshrc æ .ircrcã对è¯èæ¬ä»ä»æ¯é©±å¨å·²æçç¨åºï¼å¹¶ä¸æ¯ç¬ç«çç¨åºã
è®¡ç®æºä¸å®¶ä¼è§£éè¯´ï¼ææç¨åºé½æ¯è§£éæ§è¡çï¼ä½æ¯é®é¢æ¯ä»åªä¸ªå±æ¬¡å»èèã妿ä½é®ä¸ä¸ªä¸æ¯è®¡ç®æºä¸å®¶ç人ï¼ä»ä»¬å¯è½åè¯ä½ï¼ä¸ä¸ª program æ¯å·²è¢«ç¼è¯ä¸ºæºå¨ç ï¼ä¸æ¬¡ç¼è¯å¤æ¬¡è¿è¡çä¸è¥¿ï¼èä¸ä¸ª script 卿¯æ¬¡ä½¿ç¨æ¶é½å¿é¡»é¦åç¿»è¯ä¸º program
Perl ç¨åºé叏䏿¯ä¸¥æ ¼çç¼è¯æè§£éæ§è¡çãå®ä»¬å¯ä»¥è¢«ç¼è¯ä¸ºåèç å½¢å¼ (å¯ä»¥å¨ Perl èææºä¸è¿è¡) æèå®å¨ä¸åçå¶ä»è¯è¨ï¼ä¾å¦ C ææ±ç¼ãä½ ä¸è½ä»ä»ä»æºç¨åºæ¨æ- 宿¯å¦åºå½è¢«ä¸ä¸ªçº¯è§£éå¨ï¼ä¸ä¸ªåææ è§£éå¨ï¼ä¸ä¸ªå- èç è§£é卿èä¸ä¸ªæ¬å°ä»£ç ç¼è¯å¨æ¥è¿è¡ï¼å æ¤å¨è¿éå¾é¾ç»åºä¸ä¸ªç¡®å®ççæ¡
ç°å¨ script å scripting å·²æä¸ºè¢«ä¸æéç人åæç¥çå人为äºèªå·±æ¶æ¯çç®çèç¨å°ç两个è¯ï¼å®ä»¬å¼å§æ¥æå¥æªçï¼è´¬ä¹çå«ä¹ï¼ç±»ä¼¼ "ä¸ä¸¥è°¨ non serious" æ "䏿¯çæ£çç¼ç¨". å æ¤ï¼ä¸äº Perl ç¨åºå鿩䏿å®ä»¬åæ¶æ¯è¾ã
JAPH æ¯ä»ä¹ï¼
è¿æ¯è¿å»ä¸äºå¨è®¨è®ºç¾¤ä¸èªç§° ‘‘just another perl hacker’’ ç人çç- ¾åæ¡£ï¼Randal Schwartz å¼äºè¿æ ·çåæ²³ã约æä¸ç¾ä¸ªæ¯è¾æ©æççæ¬ï¼å¯å¨ http://www.cpan.org/misc/japh è·å¾ã
å°åªå¿å¯æ¿å° Larry Wall çæºæ§è®½è¯ (witticisms)ï¼
ä¸ç¾å¤æ¡ Larryç讽è¯ï¼æºèªä»ãå¨è®¨è®ºç¾¤ãç postsæåå§ç ï¼å¯å¨ http://www.cpan.org/misc/lwall-quotes.txt.gz è·å¾
æè¦å¦ä½åä¿¡ã说ææçç³»ç»ç®¡çèï¼ä¸å¸ï¼å±ä¸ä½¿ç¨ç¬¬ 5/5.8.3 çç Perlï¼èä¸å»ç¨å¶ä»çè¯è¨ï¼
妿æ¨ç管çé¶å±æå±ä¸å¯¹æ²¡ææ¯æ´ç软ä½ï¼ææ¯æªæ£å¼åå«å¨æè´ä¹°çä½ä¸ç³»ç»ä¸- ç软ä½å- ææå¿çè¯ï¼æ¨å¯ä»¥è¯ç仿å©ä»ä»¬èªèº«å©çè¿æ¹é¢ä¸æãåä¸ºå¦æç¨å¼è®¾è®¡å¸è½ç±ååå©ç¨ Perlçç»æãåè½æ§ãç®åæ§ï¼åå¨åèè·å¾æ´å¤§çç产åçè¯ï¼é£ä¹å¸åç管çèï¼ä¸å¸ï¼åå·¥æè®¸ä¾¿å¯åèå以说æãæ- ¤å¤ï¼ä½¿ç¨ Perlï¼æ»çæ¥è®²ï¼åå¶ä»è¯- è¨ç¸è¾ï¼æè®¸ä¹æå©äºåå°äº¤ä»¶çæ¶é´ã强è°è¿ä¸ªè®º ç¹æè®¸å¯¹è¯´æä»ä»¬ä¼æå¸®å©ã
妿æ¨çä¸é¢ç¢°å°ç¶é¢ï¼ç¹å«æ¯æå³è½¬è¯ææµè¯æ¹é¢çé®é¢ï¼é£ä¹ Perlå¯ä»¥è¯´ç»å¯¹ä¼æ¯ä¸ä¸ªæ¢å¯è¡ä¸å¿«çè§£å³ä¹éãæ¨å¨å½è¯´å®¢çæ¶åï¼åä¸å«å¿äºè¦æï¼Perl已被ä¸çä¸è®¸å¤å¤§åç软硬ä½å¬å¸å¹¿æ³ã大éå°ä½¿ç¨ï¼æä¸ºå¯éãææãäºå®ä¸ï¼ç° Perlå·²æä¸ºè®¸å¤ Unixä¸èæå®çä½ä¸ç³»ç»çæ åéå¤äºãèä¸å¦ææ¨æ æ³å¨ 详尽ç使ç¨è¯´æï¼åæ¬è¿ä»½ FAQä¹ä¸ä¸ºæ¨çé®é¢æ¾å°è§£ççè¯ï¼éå° post å°æ°é»è®¨è®ºç¾¤å³å¯ã
åè§ http://www.perl.org/advocacy/
妿æ¨é¢å¯¹å对 perlå级ç声é³ï¼é£ä¹åè¯ä»ä»¬ Perlåå±å°ç»å·²ç»å®å¨ä¸åç»´æ¤ææ¯æ´ç¬¬åçç perläºãperl5çå¦ä¸ä¸ªå¤§åç¹æ¯å®æå¤§éçæ¨¡ç»å延伸ï¼å¯å¤§å¤§åå°è®¡ç»çå屿¶é´ãè¿æï¼åè¯ä»ä»¬ç¬¬åå第äºç Perlä¹é´çå·®å¼å°±å¦ awk å C++çå·®å«ä¸æ·ï¼å¯ï¼æè®¸æ²¡æå·®å¾é£ä¹ææ¾ï¼ä½æ¨ç¥éæçææå°±å¥½ï¼ãå¦ææ¨æ³å¾å°æ¯æ´è䏿³ç¡®ä¿æ¨ç°å¨æåå±ç软ä½å¨æªæ¥è½ç»§ç»- å·¥ä½çè¯ï¼é£ä¹æ¨å¾è·ææ¯æ´ççæ¬ãå¨ 2003 å¹´ 12 æï¼è¿å¤§æ¦ä¹å°±æ¯è¯´è¦è· 5.8.2 ççï¼æèç¨å¾®æ§ä¸äºççæ¬å¦5.6.2 (November 2003 åå¸; ä¸ä¸ªä¿®æ- £åè¡ï¼ä½¿å¾ perl 5.6 卿°ç³»ç»ä¸å¯ä»¥ç¼è¯ï¼å 为 5.6.1åè¡æ©å¨ April 2001) æ 5.005_03 (March 1999 åè¡), å¦æä½ ä¸å®è¦ä¸ä¸ªæ§çæ¬æ¥ä¿æå¼å®¹æ§ï¼ä½¿ç¨ 5.004_05 ä¹ä¸åãæ¯ 5.004_05 æ´æ§ççæ¬åå³ä¸è½åç¨
Of particular note is the massive bug hunt for buffer overflow problems that went into the 5.004 release. All releases prior to that, including perl4, are considered insecure and should be upgraded as soon as possible.
In August 2000 in all Linux distributions a new security problem was found in the optional ’suidperl’ (not built or installed by default) in all the Perl branches 5.6, 5.005, and 5.004, see http://www.cpan.org/src/5.0/sperl-2000-08-05/ Perl maintenance releases 5.6.1 and 5.8.0 have this security hole closed. Most, if not all, Linux distribution have patches for this vulnerability available, see http://www.linuxsecurity.com/advisories/ , but the most recommendable way is to upgrade to at least Perl 5.6.1.
AUTHOR AND COPYRIGHT
Copyright (c) 1997, 1998, 1999, 2000, 2001 Tom Christiansen and Nathan Torkington. All rights reserved.
This documentation is free; you can redistribute it and/or modify it under the same terms as Perl itself.
Irrespective of its distribution, all code examples here are in the public domain. You are permitted and encouraged to use this code and any derivatives thereof in your own programs for fun or for profit as you see fit. A simple comment in the code giving credit to the FAQ would be courteous but is not required.
è¯è
è§ç¾é¾ï¼ä¸¤åªèèå·¥ä½å®¤
è·
æ¬é¡µé¢ä¸æçç±ä¸æ
man
æå页计åæä¾ã
䏿 man
æå页计åï¼https://github.com/man-pages-zh/manpages-zh