

 ஢ ᫮ 

  Perl


Copyright (C) ᫮  ஢

 砭  । ࠢ  :

maslov@klgtts.kaluga.su

maslov@news.kaluga.rosmail.com


ਬ஢७  ᨨ 5.003

樮 ⥬ Unix FreeBSD 2.1.0.



 ⮣  ᫮


०祬㯨  ᫥⥫쭮       몮,   ᪠,  ਬ   ᠬ  ᠭ ண 饭    Perl ᨨ 5.003  樮 ⥬FreeBSDᨨ 2.01.ॠ樨⮣몠樮 ⥬ OS/2 , MS-DOS  Windows NT    ਣ, ஦   . 

ਬ 1   䠩 test1.pl ᫥騥 ப:

#!/usr/local/bin/perl

# ন 䠩 test1.pl

print <   窮!\n>;

 ⥯ ஡ ࠧ६  ப.

#!/usr/local/bin/perl

 ப   ࢮ   -ணࠬ.

 㪠뢠 ⥬    䠩 - -ணࠬ.

# ন 䠩 test1.pl

 ப 뢠 ਥ.  ᥣ 稭 ᨬ '#'  稢 ⠪᭥   ਫ  । < ⮭ 䨫ᮢ᪨ >,    몮      㣮.

 㪮.    筮    .

print <   窮!\n>;

 ᫥   筮 .   뢮  ࠭  <   窮!>. 

 ᫮ print -   <뢥>.    窠 -  ᨬ, \n - ॢ ப  ';' - ਧ  .  易⥫.

  ப   ᪮쪮       ᨬ ';'. ᫥    ᨬ '#' -   ⮪ ப ⠥ ਥ.

 ⮩ ப  諮  ᥣ   ⠪    ﭭ    ࠭ <hello>, <hello all>, <஥  ᯠᥬ>, <ன  ᯠᥭ>  .  ..

᫨    ࠡ⠫  ,    ᯮ  10$,   ணࠬ ࠧ    ࠡ⠥!

 ⮬    ୠ,  ⮬  <  ⭮>.

ࠧ, ⮬ ,    ﬨ.

砫 ᤥ  䠩 test1.pl ᯮ塞.  ⮣  :

chmod +x test1.pl

⥬ ஢    .  ⮣ :

which perl

⥬  뤠   த: 

/usr/bin/perl

᫨: 

perl: Command not found.

 ⮣ ன    ᯠ.         ⠭.   ⠥ ᫠   ⥬    man ( ॢ稪- man ᮪饭  manual      㬠).

 ஢   ப 01 ᮤঠ   뤠  which.

᫨ ᮢ  :

test1.pl

   50$   ⥯ ணࠬ  ࠡ⠥, ⠪  ࠢ쭥

:

./test1.pl

᫨  நࠫ,   ࠤ.   ᫨  㤠  ணࠬ  test1.pl  ,     ⭮  饬.

ਬ 2  ணࠬ 뢮  ࠭   ᥪ.   䠩 /etc/passwd.

#!/usr/local/bin/perl

open(PASS, <</etc/passwd>) || die <  !>;

while(<PASS>)

{

print;

}

close(PASS);

᭥:

open(PASS, <</etc/passwd>) || die <  !>;

<> 䠩 .. ᮧ 㪠⥫ 䠩 PASS   砥 訡 뤠 <  !>   ணࠬ.

while(<PASS>)

   ப 䠩  ६  㬮砭 $_.

{

  ஢.

print;

뢥  ࠭ ६  㬮砭 $_

}

 .

close(PASS);

 䠩. ⮣     ⠪- 䠩 ⮬᪨ ஥ ᫥ 砭 ணࠬ.

 ࠡ ⮩ ணࠬ      cat /etc/passwd.

 ࠭ ஡  ப   ⥯ ।   ਧ  ணࠬ஢!

 ᫥騥 ਬ  ࠧ⨥ ⮩ ணࠬ   ॢ   ⥭  ४᭮  ( ࠫ).

ਬ 3  .

#!/usr/local/bin/perl

open(PASS, <</etc/passwd>) || die <  !>;

while(<PASS>)

{

($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':');

print <$login \t $name\n>;

}

close(PASS);

᭥:

($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':');

᢮ 㪠 ६  室 ப,  ࠧ⥫ ᨬ ':'.

print <$login \t $name\n>;

뢥 login -  짮⥫   ᠭ.  ࠧ ᨬ '\t' - ⠡樨.

ਬ 4 뢥  짮⥫ ஢  㯯.

#!/usr/local/bin/perl

open(PASS, <sort -n -t : +3 -4 +0 /etc/passwd|>) || die <  !>;

while(<PASS>)

{

($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':');

print <$login \t $gid \t $name\n>;

}

close(PASS);

᭥:

open(PASS, <sort -n -t : +3 -4 +0 /etc/passwd|>) || die <  !>;

  ப  䮪! 室 䠩  襩 ணࠬ ⠫ 室  sort    室 .


ଠ஢ 뢮.

  ⥯ ⠥  ࠭     㤮 ଥ.

#!/usr/local/bin/perl

open(PASS, <sort -n -t : +3 -4 +0 /etc/passwd|>) || die <  !>;

while(<PASS>)

{

($login, $pass, $uid, $gid, $name, $home_dir, $shell) = split(':');

write();# ଠ஢ 뢮 .

}

close(PASS);

exit 0;# 襭 ணࠬ

############ ᠭ  뢮 ##################

format STDOUT =

짮⥫: 

^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

$name

^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

$name

^<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

$name

Login:@<<<<<<<<Uid:@<<<Gid:@<<<Home dir:@<<<<<<<<<<<<<<<<<<<<<

$login,$uid,$gid,$home_dir

.#  ᫥ ப ணࠬ

ࠣ १:

짮⥫: ᪨ - . 訥  

⮩.  ⮫쪮 । ࠧ ਪ

⮫ . 2-23-06,,,

Login:uucrystUid:1055Gid:66Home dir:/var/spool/uucppublic/

짮⥫: ࣮  ,,,

Login:uudilenUid:1075Gid:66Home dir:/var/spool/uucppublic

᫨  ᭮ 㧭  ࠡ⠥  ணࠬ,  ॢ୨

࠭  稭 ᢮ ⢨   .

 㤠!




  


⠪:

perl [] 䠩 㬥

। ⮬   ਯ (ணࠬ)  ᫥饬 浪:

1.   ப ᫨ 㪠  '-e'

2. ন 䠩 㪠   ப.  ࢮப  㪠뢠 #!/usr/bin/perl  <⮬᪮>᪠ ਯ.

3. ⠭ /뢮 ᫨  㪠 䠩  㬥ᮤঠ騥  䠩.  । 㬥⮢ ਯ  ⠭⭮ ⮪  䠩   ப 砥ᨬ '-'.

 ⮤ 1  2  ᪠ ப 稭  ࢮ ᫨  㪠  '-x',  ⨢ 砥 砫 ணࠬ ⠥ ப  ᨬ '#!'  砫  ᮤঠ ᫮ 'perl'.

殬 ணࠬ ⠥ ப '__END__'.

 ப  '#!'  㪠뢠  . ਬ '#!/bin/perl -d'  ⫠ ணࠬ.

᫥ <㦥> ਯ    楫  ७ ।⠢. ᫨ 㦨 訡  믮 ४頥. ᫨ 訡   믮. ᫨ ਯ 稢   exit()  die()   㬮砭 믮  exit(0)  ଠ쭮 襭 ணࠬ.

:

-O

 ᨬ-ࠧ⥫ ᥩ.  㬮砭 \0.

-a

砥 ० ⮬᪮ ࠧ (split) ६ $_  ᨢ $F. ਬ  砬 -n  -p.

-c

믮 ᨭ⠪᪠ ஢ઠ ਯ  室  ᪠.

-d

  ० ࠪ⨢ ⫠.

-D᫮  Dᯨ᮪

⠭ 䫠 ⫠ . ਬ -d14 ᫥   ᯮ  ணࠬ.

1p⠪᪨ ࠧ

2sﭨ ⥪

4lﭨ ⥪ 

8t஢ ᯮ

16o  㧫

32cப/᫮ ८ࠧ

64p뢮  ९  -P

128 m। 

256 fࠡ⪠ ଠ

512 r⠪᪨ ࠧ ॣ ࠦ

1024x ᨭ⠪᪮ ॢ

2048u஢ઠ 

4096L<窠> 

8192H 

16384X। scratchpad

32768D⪠

-e 

믮 ਯ   ப 㪠   ப.

-F 蠡

뢠 蠡 ࠧ  ० ࠡ  箬 -a

-i७

ਬ  १ࢭ  䠩 ࠡ뢠 ஬ '<>'. ਣ ࠭  䠩  ⥬     室,   㪠 ७.

ਬ:

perl -p -i.old -e <s/冷/३/> file

-  ᫮ <冷>  <३>  䠩 file

 ਣ   䠩 file.old

-I४

४ includ- 䠩   ९. ਬ  箬 -P

 㬮砭  /usr/include  /usr/lib/perl.

-l᫮


⮬᪠ ࠡ⪠ ᨬ  ப. 

⠥   .

1. 뢠 ᫥ ᨬ ⠥ ப  ० -n  -p

2. ᢠ 㪠 祭 ६ $\.  ࠧ    ப 뢮 ஬ print   ᨬ.

-n

横 ਯ  ᫥⥫쭮 ࠡ뢠 䠩 㪠   ப.  ᮧ   sed  awk. 

 BEGIN  END    砫   ⠭. ন 䠩  뢮.

-p

    -n  ⠥ ࠡ뢠 ப 䠩.

-P

।⥫쭠 ࠡ⪮ ९஬ 몠 .  ⥫   ਬ   ᫮ 'if', 'else'  'define' ..    - ९.

-s

祭 ० ࠡ⪨ 祩  ப ᪠ ਯ.

 㬥  ᨬ '-'  砫,  箬  ६  ⠪   ᢠ 祭 true.

-S


ᯮ짮 ⥬ ६ PATH  ᪠ ਯ.

  ਬ  ⥬  ਭ ᫥⥫쭮 "#!"  砫 ਯ  㪠 .

-T

 ஢ન <>  . 筮  㦭  ணࠬ ࠡ  ० 襭 ਢ (setuid, setguid). ⥫쭮  CGI ਯ⮢.

-u

ਭ㤨⥫   ᫥ 樨 ਯ.    ⮬ ᯮ짮  ᮧ ᯮ塞 䠩   ணࠬ undump.

-U

襭 믮  樨. ਬ  ४  믮    ணࠬ.

-v

뢮  ᨨ .

-w

뢮  ६ ᯮ㥬 ⮫쪮  ࠧ,  ᪠஢ ᯮ㥬   ।,  ८।塞 ணࠬ, 뫮  । 㪠⥫ 䠩, ⮪   䠩  ⮫쪮  <⥭>, 㯮ॡ   ᥩ ᥫ, ᯮ짮 ᨢ  ᪠஢, ४  100 ஢. 

-x ४

 ᪠ ਯ ⠢ 䠩 ᮤঠ騩  ⥪. 砫 ਯ ⠥ ப  ᨬ '#!'  砫  ᮤঠ ᫮ perl. 殬 - ப  '__END__'

 ४ ⠭ ⥪饩   ᯮ. ᫨ 室  ᫥騥 ப     १ 㪠⥫ 䠩 DATA.




⠪


 ணࠬ (ਯ) ⮨  ᫥⥫쭮 権  ।.

⢥    易⥫쭮 ஢  ଠ ⮢  ணࠬ (㭪樨).    ६, ᨢ,  祭 0  null.

樨 ().

  ᢮ ଠ. ਨ 稭  ᨬ '#'  த   ப.

樨  ᯮ짮    ணࠬ ⠪    । (statements)    ⮫쪮  䠧 樨 ணࠬ. 筮     砫    ணࠬ.

 ணࠬ  ᯮ짮  ணࠬ  ᯨ᪮  稭   ஢.

ਬ:

sub test;#  ணࠬ test

$var1 = test $0; # ᯮ짮   ᯨ᪠.

樨 ணࠬ   㦥  ⤥쭮 䠩 । require  㦥  ஢  ⥪   । use. ஡ .  㫨.

⮥ ।.

⮥ । 易⥫쭮 稢 ᨬ ';' ᫨ ⮫쪮   ᫥ ।    ';'  .     ⠪  eval{}  do{}  룫  ᫮ ।   ᠬ     ॡ 易⥫쭮 㪠  ।.

 ⮥ ।  ᮤঠ single 䨪 । ';'.  ᫥騥 single 䨪:

if EXPR

unless EXPR

while EXPR

until EXPR

 EXPR - ࠦ 饥 ᪮ 祭 true  false.

䨪 while  until   砫 । ஬  do  믮 .

if EXPR- 䨪 <᫨>. । 믮 ᫨ EXPR 頥 true.

ਬ:

$var = 1;

$var2 = 3 if $var > 0; # : $var2 = 3

while EXPR- 䨪 <>. । 믮 ⮫쪮 ࠧ EXPR = true

ਬ:

$var = 1;

print $var++ while $var < 5; #  $var  ६⮬

: 1234


until EXPR- 䨪 " ". । 믮    EXPR = false

ਬ:

$var = 1;

print $var++ until $var > 5; #  $var  ६⮬

: 12345

unless EXPR - 䨪 <᫨ > .   if. ࠦ 믮 ᫥ EXPR = false.

ਬ:

$var = 1;

print $var++ unless $var > 5; #  $var  ६⮬

: 1


 ।.

᫥⥫쭮  । ࠭祭 㭪樮묨 ࠭⥫ﬨ 뢠 .      楫 䠩, ᫥⥫쭮 ।   eval{}   ᥣ  ⢮  । ࠭祭 㣫묨 ᪮ '{}'.

㦥 ᫥騥  ᫮ ।:

if (EXPR) BLOCK

if (EXPR) BLOCK else BLOCK

if (EXPR) BLOCK elsif (EXPR) BLOCK ... else BLOCK

LABEL while (EXPR) BLOCK

LABEL while (EXPR) BLOCK continue BLOCK

LABEL for (EXPR; EXPR; EXPR) BLOCK

LABEL foreach VAR (LIST) BLOCK

LABEL BLOCK continue BLOCK

 ,  ᫮ । ᠭ  ଠ    ।   몠 C  Pascal. ⮬ 室 ᥣ ᯮ짮 㣫 ᪮  祭 .

if (EXPR) BLOCK-  ᪮ ࠦ EXPR  ᫨ true 믮.

ਬ:

$var =1;

if ($var == 1)

{ print $var,"\n";

}

: 1


if (EXPR) BLOCKelseBLOCK2 -᫨ EXPR=true 믮 BLOCK  BLOCK2.

ਬ:

$var =2;

if ($var == 1)

{ print <\$var = 1\n>;

}

else

{ print <\$var  ࠢ 1\n>;

}

: $var  ࠢ 1

if (EXPR1) BLOCK1 elsif (EXPR2) BLOCK2 ... else BLOCK-᫨ EXPR1=true 믮 BLOCK1  ᫨ EXPR2=true 믮BLOCK2  ...  BLOCK.

ਬ:

$var = 1;

if ($var == 0)

{ print <\$var = 0\n>;

}

elsif ($var == 1)

{ print <\$var = 1\n>;

}

else

{ print < ⭮ \$var\n>;

}

: $var = 1

 while 믮 BLOCK     EXPR = true. ⪠ LABEL  易⥫쭠  ⮨  䨪 饣 ᨬ ':'. ⪠ 室  ᯮ짮   横 ࠢ ஢ next, last  redo. ᫨ ⪠       뫠  砫 襣 横.

 ᫥ continue 믮 ᥣ । ⥬   ᪮ ࠦ EXPR.   EXPR3  । for ⮬  ⮬  㤮  稪  䫠 横  ᫨ ਬ  next.


 ࠢ 横.

next-  continue  . 室  砫 ⥪饣 横..  .

ਬ:

M1:

while ($i < 6)

{

++$i;# 稢 稪  1

next M1 if $i < 3; # 室  砫 ᫨ $i < 3

++$i;#  㢥稢 稪  ࠧ  1

}

continue

{

print "$i "; # ⠥ $i

}

: 1 2 4 6

last-   break  몥 .  뢠 横. continue ய᪠.

ਬ:

M1:

while ($i < 6)

{

++$i;# 稢 稪  1

last M1 if $i > 3; # 室  横 ᫨ $i > 3

++$i;#  㢥稢 稪  ࠧ  1

}

continue {

print "$i "; # ⠥ $i

}

: 2 4

redo-   横   EXPR   믮 continue .

ਬ:

M1:

while ($i < 6)

{

++$i;# 稢 稪  1

redo M1 if $i == 3; #  ய  $i = 3

++$i;#  㢥稢 稪  ࠧ  1

}

continue {

print "$i "; # ⠥ $i

}

: 2 5 7


 for.

LABEL for (EXPR1; EXPR2; EXPR3) BLOCK

 for  祭  for  .  । 砫 横 믮 EXPR1, ᫨ EXPR2 = true 믮 , ⥬ 믮 EXPR3.

ਬ:

for ($i = 2; $i < 5; ++$i)

{

print $i, " ";

}

print <\n᫥ 横 i = $i\n>;

:

2 3 4

᫥ 横 i = 5


 foreach.

LABEL foreach VAR (LIST) BLOCK

६ VAR ᢠ ।   ᯨ᪠ LIST  믮 . ᫨ VAR 饭   ᢠ ஥ ६ $_. ᫨  ⥫   祭 VAR   맮   ⮢ ᯨ᪠ .. VAR 䠪᪨ 㪠뢠  ⥪騩  ᯨ᪠.

 ᫮ foreach    for -  ᫮ ᨭ.

ਬ:

@ = (<ﭢ>,"䥢ࠫ","");#  ᨢ

foreach $i (@)

{

print $i," ";#  $i

}

: ﭢ 䥢ࠫ 

ਬ:

@ = (<ﭢ>,"䥢ࠫ","");#  ᨢ

foreach $i (@)

{

$i = uc($i); # ॢ  孨 ॣ

}

print @;

: 

ਬ:

for $i (3,5,7)

{

print "$i ";

}

: 3 5 7


   switch.

  ᨬ  ⮣      ᥬ᪨ ।⠢ ᮡ 横  믮  ࠧ. ⮬ ⢨ ஢ 横 next, last, redo - 筮 ᠭ .  㤮  ஥ switch (४⥫) .

   ᯥ樠쭮  switch    ⮬  ᠬ  ᮧ 㤮   樨. 


  뢠    ᠭ  ᥣ 室   if ... elsif ... else ...   稭   :

SWITCH:

{

if ($i ==1 ) { .....; last SWITCH; }

if ($i ==2 ) { .....; last SWITCH; }

if ($i ==3 ) { .....; last SWITCH; }

$default = 13;

}

롨ࠩ ᠬ  ᢮ .


 goto.

    goto   ,     ਬ  ਫ  । < 䨫ᮢ᪨ >. 

 稭 ணࠬ⮢   ⠪ <㦥>    ᮢ⮢ <>   ⢮.   ᮧ  ந⢥   ᫥ ⠯ ᮡ  ࠡ⪥ <⢠> 訡 権 筮 goto 㦥.

  ॠ   goto. goto - ⪠, goto - ࠦ  goto - ணࠬ.

goto - ⪠ 믮 ।⢥ 室  㪠 .

goto - ࠦ -   ⪨   ᮮ⢥騩 室.

ਬ ᫨  ⨬ ᤥ 室     ⮪"M1:", "M2:"  "M3:"  ᨬ  祭 ६$i ࠢ 0, 1  2    ᤥ ᫥騬 ࠧ:

goto (<M1>, <M2>, <M3>)[$i];

 $i ᯮ   ᨢ 㪠 ।⢥ ࠦ.

goto ணࠬ - 쭮 । 砩 .. ᥣ    맢 ணࠬ <⢥> ࠧ.


POD . 㬥஢ ணࠬ.


  ॠ 祭 㤮 堭  ᠭ 㬥樨   ᮧ ணࠬ.  ⮣ ਬ ᯥ樠 POD .

᫨  ⥫ ணࠬ  砥  稭騩  ᨬ '=' ਬ:

= head  ⠭ 楤

 ய᪠   ᫮ '=cut'.  㤮  祭   ᪮쪮 ப  ࠭ ਥ. ⥬

  ᯥ樠쭮 ணࠬ pod  ⤥ ⥪ 㬥樨  ⥪ ணࠬ.




६


    ⨯  : ᪠, ᨢ ᪠஢   (hashes) - 樠⨢ ᨢ ᪠஢. 筮  ᨢ  楫묨 ᫠,   - 㫥. ⥫쭮 祭  砥  樨   .   ப ᨬ.

 ᪠ ६ ᥣ 稭  ᨬ '$'     ᨢ.

ਬ:

$var1# ⮩ ᪠ 'var1'

$var1[0]#   ᨢ 'var1'

$var1{'first'}#   ᮬ 'first'


 砥 ᯮ짮  ᨢ <楫>   <१> ।  ᨢ ⠢ ᨬ '@'.

ਬ:

@var1#   ᨢ var1 ( $var1[0], $var1[1], ... $var1[n])

@var1[1,3,10]#  $var1[1], $var1[3], $var1[10]

@var1{'first','last'} #     ( $var1{'first'}, $var1{'last'} )

 <楫> 稭  ᨬ '%'.

ਬ:

%var, %key, %years

 ணࠬ 稭 ᨬ '&' ᫨  ⥪  

  ணࠬ.

ਬ:

&sub1, &test_prog, test(12)

 ⠡ ᨬ ᥣ 稭 ᨬ '*'.

 ⨯ ६  ᢮   ⮬ $var1  $var1[0] ᮢ襭 ࠧ ६,  $var1[0]  ᨢ @var1.   @var1  %var1 - ࠧ ᨢ ६.

 ६  ᮤঠ  㪢-஢ ᨬ  ᪫祭 ஡  ⠡樨.  ᬢ ᯮ  ⢥ ࠧ⥫.

訥   㪢 ࠧ ⮬ $var1  $Var1 - ࠧ ६.    㬮砭  ⮪  㪠⥫ 䠩  訬 㪢.


⥪.

讥 祭  ࠢ쭮 㯮ॡ ஥ 㭪権  ⥪ ᯮ짮 १  㭪権 ..  ⨢ 砥   ᮢ襭 <> १.

     ⥪: ᪠  ᯨ᮪ (list).

  ᫨    ࠦ    ⢥ 祭 -   ᪠ ⥪. ᫨ ⢮ 祭 - ᯨ᮪.

ਬ:

$var1 = <>; #   ப 䠩

@var1 = <>; #   ப 䠩  ᨢ @var1

$var1 = (1,2,3); # $var = 3 - ⢮ ⮢

@var1 = (1,2,3); #  ᨢ @var1  ⠬ 1,2,3


 祭.

     ᪠, ᨢ ᪠஢   ᪠஢.

 ६  ᮤঠ ᫠, ப  뫪.

८ࠧ ᫠ - ப ந室 ⮬᪨  㬮砭.

   ⮫쪮  ⢥ 祭,     뫪  ᨢ ᪠஢.  -   ᠬ ८ࠧ뢠 ᫠  ப    ணࠬ  室 㬠  ⮬  頥 㭪.

    ⨯ <ப>  <᫮>  <䠩>    .

 ⥪⭮ ᨬ    ࠡ  ⥪⠬.

  ᪮ 祭 "TRUE" (⨭) ᫨   㫥 ப  ᫮  ࠢ 0.

    ⨯ 㫥 (null) ᪠஢ - । (defined)   । (undefined).  । 祭 頥  -  . ਬ  ⭠ ६,  䠩  訡.   㭪樨 defined()   ࠭ 㦨  ﭨ.

⢮ ⮢ ᨢ ⠪   ᪠஬  稭 ᨬ $#   csh. ᪨ $#var1 -   ᫥  ᨢ. 㦭       0 ⮬ ⢮ ⮢ ।  $#var1+1 . ᢮ 祭 $#var1 -   ᨢ  ࠧ <⠢> 祭.

᢮ 祭  ᨢ  ᮬ  祬 $#var1

-㢥 ࠧ ᨢ,  ᢮  㫥 ᯨ᪠ - 㫨.

 ᪠୮ ⥪  ᨢ 頥   ( ᯨ᪠ 頥 ᫥ ).

ਬ:

@var1 = (4, 3, 2, 1);# ᢮ 祭 ⠬ ᨢ

$i = @var1;# ᯮ짮 ᪠୮ ⥪

print $i;#  १ 4 - - ⮢

print @var1;# ᪮ ⥪,   ⮢.

 ਭ㤨⥫쭮 祭 ᪠୮ 祭 㤮 ਬ 㭪 scalar().

ਬ:

print scalar(@var1);# 뢮  ᨢ    祭

  ᪠୮ ⥪ 頥 <true> ᫨      <-祭>. ᪨ 頥 ப ⨯ 2/8  8 - ⢮ 뤥 <祥> ,  2 - ⢮ ᯮ짮.

 ᪠஢.

᫠  ⠭⭮:

123

123.123

0.12

.12E-10

0xABCD# ⭠筠 

0377# ᫨ 0  砫 - 쬥筠

123_456_123 #  ⮦   㤮⢠ ⥭.

ப ࠭稢 묨 (')  묨 (") 窠:

', ᬨ୮!'

<஥  ᯠᥬ.>

ᮡ 祭 ப 祭 . ஡ ᬮ ᠭ  qq.

   ᪠ 窨 ᫨   ᮤন ஡.

ਬ:

$var1{first}     $var1{'first'}

     । ࢮ ୮ 窮   ஡  ப ਬ   ६ ⠪-   ࠧ襭 ᯮ짮  祪.

頥  窠 ਬ १ࢨ஢ ࠫ __LINE__ ( ⥪饩 ப ணࠬ), __FILE__ (⥪騩 䠩).

 祭  ணࠬ  ਬ ࠫ __END__

 ᫥騩 ⥪ ,     ᯮ 㪠⥫ 䠩 DATA.

  ணࠬ  騥   ⥯樨 ਭ  ப  窠 ⮬ ४  ⮪  㪠⥫ 䠩  訬 㪢    <䫨>  १ࢨ஢묨 ᫮.

    ⠢ ⥪ 㬥 אַ  ணࠬ.

 뢠 "here-doc" ( ⥪) ⮤. 砥 ᨬ<<    ᫮-࠭⥫.

ਬ:

print <<EOF;#  ப  EOF - ⥪  .

  ஥,   !

 쪨.

EOF


 ᯨ᪮.

᮪ - ⢮ 祭 ᫥ १   祭  㣫 ᪮.  ᯨ᪮ ⥪ ᯨ᮪ 頥 ᫥  ᯨ᪠.

ਬ:

@var1 = (1, 2, 'ਢ', 1.2); # ᢮ 祭 ⠬.



$var1[0] = 1,

$var1[1] = 2,

$var1[2] = 'ਢ'

$var1[3] = 1.2


$var1 = (1, 2, 'ਢ', 1.2);

  $var1 = 1.2 .. ᫥ 祭 ᯨ᪠.

᪠ ਬ  ᯨ᪥ 㣨 ᯨ᪨,   祭 ᯨ᪥ 㦥  ࠧ 砫   祭 ᯨ᪮.

ਬ:

@s1 = (1, 2, 3); # ᯨ᮪

@s2 = (6, 7, 8);# ன

@s = (0, @s1, 4, 5, @s2, 9, 10); # 砥 ᯨ᪨ @s1  @s2

print @s;# : 012345678910- 祭  ஡.


᮪  ⮢ 砥  ()  뢠 -ᯨ᪮. 

᪮ ࠦ  㯮ॡ   ᨢ,   ⮬  㦭   㣫 ᪮.

ਬ:

print ('ﭢ','䥢ࠫ','')[1];

: 䥢ࠫ

᮪   ᢮ ᯨ ⮫쪮 ᫨    ᯨ᪥    ࠦ ⨬  ⨯ ᯨ  ࠢ .

ਬ:

($a, $b, $c) = (1, 2, 3); # $a = 1, $b = 2, $c = 3

ᢠ ᯨ᪮  ᪠୮ ⥪ 頥 ⢮ ᢮ ⮢.

ਬ:

$x = (($a, $b, $c) = (1,2));#  $x=2

 砥 ᢠ ᯨ᪠  ᯨ᮪ ࠧᬠਢ  : -祭.

ਬ:

%_ = ('ﭢ', 31, '䥢ࠫ', 30);

: $_{ﭢ} = 31, $_{䥢ࠫ} = 30

 㤮⢠   ᯮ짮 ࠦ  => .

ਬ:

%_ = (

ﭢ => 31,

䥢ࠫ => 30,

);


 typeglobs

  ᯮ ᯥ樠 ७ ⨯ typeglog   ᨢ  ६.  ᨢ 稭  ᨬ '*'.  㤮 ਬ  । 뫮  ᨢ  ,    ᨨ  㦥   ਬ 뫪 ⮬   祭 ।. ⢥   室 ⠪   ࠡ  뫪  䠩. ਬ ᫨  㦭 ᮧ  뫪  䠩  楤    ᤥ ⠪:

sub new_sub

{ local *IN; # 뫪  䠩

open (IN, <test>) || return undef;#  䠩.   訡.

.........

return;

}

 ஡  ᠭ   뫪.




஥ ६ 


ᠭ    ६    ᯥ樠 祭.

  ᪮쪮 ਢ筮  <> ணࠬ⮢ ..  筮 ⮫쪮   ᨬ 祬   '$' ᨬ  ண 稭   ६  ந   㪢-஢ ᨬ. ᫨   짮  <ଠ묨> 㪢묨 ᨭ   㦭 㪠  砫 ணࠬ:

use English;

筮 ⠪᫨   짮 ६묨  ⮤ ⥪饣 㪠⥫ 䠩   :

use FileHandle;

᫥ ⮣    :

⮤ 㪠⥫ ࠦ



㪠⥫ -> ⮤(ࠦ)


 ਢ    ⪮ ⠪    (᫮᭮) ଥ.

  ஥ ६   쪮  ⥭ ⮬   祭   .

$_

$ARG

६ -  㬮砭  ஢   ᪠.   ᫨  ⢥ 㬥  㪠  ६  ᯮ  .

$

ন  ப  ᫥ ᪥  蠡 ᮤন ᨬ  㣫 ᪮.    砥   ᪮. ࢠ ப   1.

$&

$MATCH

 ப  ᫥ ᪥  蠡.

$`

ப ।襢  ப.

$'

$POSTMATCH

ப ᫥   ப.

$+

$LAST_PAREN_MATCH

ப   ᪥  롮஬  <>.

$*

$MULTILINE_MATCHING

᫨ 祭 ⮩ ६ ⠭ ࠢ 1  ६  ன ⢫  㤥  筮 .. ᮤঠ饩 ᨬ '\n' - ॢ ப. ᫨ 票 ࠢ 0  ६ ⠥ 筮.   ᨨ 5    ४ ᯮ짮  ६.

$.

$INPUT_LINE_NUMBER

$NR

 ⠭ ப ᫥  . ⨥ 䠩 뢠  祭 ⮩ ६.

$/

$RS

$INPUT_RECORD_SEPARATOR

 - ਧ  室 ப.  㬮砭  '\n'

$|

$OUTPUT_AUTOFLUSH

᫨ ᢮ ⮩ ६  㫥 祭  㤥   뢮 ᫥  樨 뢮. 祭  㬮砭 -0

$,

$OFS

$OUTPUT_FIELD_SEPARATOR

 塞஬ print ᫥    ᯨ᪠ ࠬ஢.

$\

$ORS

$OUTPUT_RECORD_SEPARATOR

 塞 print ᫥ 뢮  ࠬ஢.

$"

$LIST_SEPARATOR

祭 <$,>   ᫥   ᨢ 㪠  <....>.

$;

$SUBSEP

$SUBSCRIPT_SEPARATOR

 - ࠧ⥫  樨  ᨢ   ᨢ.  㬮砭 '\034'.

$#

$OFMT

ଠ  㬮砭  뢮 ᥫ.

$%

$FORMAT_PAGE_NUMBER

ଠ  㬮砭  뢮 ஢ ࠭.

$=

$FORMAT_LINES_PER_PAGE

  ࠭.  㬮砭 60 ப.

$-

$FORMAT_LINES_LEFT

⢮ ⠢ ப  ࠭.

$~

$FORMAT_NAME

 ଠ ⥪饣 뢮.  㬮砭  㪠⥫.

$^

$FORMAT_TOP_NAME

 ⥪饣 ଠ   ࠭.

$:

$FORMAT_LINE_BREAK_CHARACTERS

 ७ ப   .  ப ଠ ⠪  稭 ᨬ '^'.  㬮砭 '\n-'.

$^L

$FORMAT_FORMFEED

 ॢ ଠ ( ᬥ ).  㬮砭 '\f'.

$^A

$ACCUMULATOR

饥 祭  㭪樨 write()  format(). 祭 ⮩ ६  㢨 ⮫쪮  ᯮ짮 㭪樨 formline() .. write() 頥  ᫥  뢮.

$?

$CHILD_ERROR

 ଥ ᮤন  襭 ⠪ ᮢ : ⨥ pipe, 襭 㭪権 system(), wait()  `...`.

$!

$ERRNO

$OS_ERROR

 ᫮ ⥪ 頥  訡 errno.

 ப - ப ᮮ饭  訡.  ਭ㤨⥫쭮 ᢮ ⮩ ଥ  訡    ⥬ ᮮ饭     ⠭  襭  㭪樨 die().

$@

$EVAL_ERROR

饭  訡 ᫥  eval().

$$

$PID

$PROCESS_ID

 ⥪饣 .

$< 

$UID

$REAL_USER_ID

 UID ⥪饣 .

$>

$EUID

$EFFECTIVE_USER_ID

䥪⨢ UID ⥪饣 .

$(

$GID

$REAL_GROUP_ID

 GID ⥪饣 .

$)

$EGID

$EFFECTIVE_GROUP_ID

䥪⨢ GID ⥪饣 .

$O

$PROGRAM_NAME

 䠩 ணࠬ. ᫨ ⮩ ६ ᢮   祭       ps,  㤮  ஫  ﭨ ணࠬ.

$[

 ࢮ  ᨢ  ᨬ ப. 祭  㬮砭 - 0.

$]

$PERL_VERSION

ப ᮮ饭 ᨨ . ⠥   perl -v ਬ  ணࠬ  । ࠡ祩 ᨨ .  ᫮ ⥪   ᨨ   䨪樨 / 1000.

$^D

$DEBUGGING

饥 祭  ⫠ '-D'.

$^F

$SYSTEM_FD_MAX

 ᨬ쭮 ⥬ ⥫ 䠩 (system file descriptor). 筮  2.

$^I

$INPLACE_EDIT

饥 祭 inplace-edit .  ⪫祭 ᯮ undef.

$^P

$PERLDB

७ 䫠 ⫠. ਬ  ⮣   ⫠稪  ᫥ ᠬ ᥡ.

$^T

$BASETIME

६  ᥪ㭤  砫 1970   ⥪饩 ணࠬ.

$^W

$WARNING

祭 䫠 '-w'. true -᫨ 祭  false - 몫祭.

$^X

$EXECUTABLE_NAME

 ᪠ . 筮 argv[0]  .

$ARGV

 ⥪饣 䠩 ⠥ ஬ '&lt;>'.

@ARGV

ᨢ ࠬ஢ ப ᪠ ணࠬ. ! @#ARGV -  ⢠ ࠬ஢  1 .. $ARGV[0]   ࠬ (  ணࠬ).

@INC

᮪ ४਩ ᪠  ᬠਢ   믮  do, require  use.

%INC

  ᮤন  ४਩   ᯮ짮 䠩  do  require.  -  䠩,  祭 - ४.

$ENV{ࠦ}

 %ENV ᮤন 祭 ६ 㦥.   祭 뢠  㦥  ᮢ ⮬.

$SIG{ࠦ}

 %SIG ᮤন  ணࠬ  ⥬ ᨣ ⠪  INT, QUIT, PIPE, ... 祭 'DEFAULT' -  ⥬ ࠡ⪨. 'IGNORE' - ஢  ᨣ.




 ࠦ (蠡)


   뢠 ᨭ⠪ ॣ ࠦ.  ᥣ    ᯮ   ᪠   ⠪  s// m/  離 =~  !=  ..

 ࠢ     宦 樨 ⠪ :

i-  ࠧ    㪢.

m-  ப 筮.

s- 筠 ப.

x- ७ ᨭ⠪ ( ᯮ짮 ஡  ਥ)

筮   樨   '/x'.   ᯮ짮   蠡, ᯮ   (?...)

 ࠦ  蠡 (pattern)   ᠬ   regexp 楤  . ࠦ  ᨭ⠪ ⢮  ᢮ ࠭塞 楤 V8   (Henry Spencer) ⠬   ஡  ᠭ.

 蠡 ᯮ ᫥騥 ᨬ (ᨬ 騥 㯯 㣨 ᨬ)  뢠 egrep - ⠭⮬:

\-  ᫥騩 ᨬ   ᨬ.

^- 砫 ப

.-  ந ᨬ. ஬ '\n' -  ப.

$-  ப

|- ୠ⨢ ()

() - 㯯஢

[] -  ᨬ

ᨬ  䨪 ( ᫥ ᨬ):

*-  0  襥 ᫮ ࠧ

+-  1  襥 ᫮ ࠧ

?- 1  0 ࠧ

{n} - 筮 n ࠧ

{n,}-  襩  ࠧ

{n,m}-   n,     m

  㣨  䨣 ᪮  묨 (ॣ묨) ᨬ.  ࠧ '*' ⭠ {0,} , '+' - {1,}  '?' - {0,1}. n  m     65536.

 㬮砭 ⢨ ᨬ <> (greedy).  ࠭ ⮫쪮 ࠧ ᪮쪮   뢠 १ ⢨ ᫥ ᨬ. ᫨   <㬥  >  ᯮ ᨬ '?'.    祭 ᨬ  㬥蠥 ࠭.  ࠧ:

*?- ⠭ 0  

+? - 1  

??- 0  1 ࠧ

{n}?- 筮 n ࠧ

{n,}?-   n ࠧ

{n,m}?-   ࠢ n   m ࠧ

 ࠡ ⠪     窨 ⮬    ᯮ짮 `\` - ᨬ (-ᨬ):

\t- ᨬ ⠡樨

\n-  ப

\r- ॢ ⪨

\A- ॢ ଠ

\v- ⨪쭠 ⠡

\a- 

\e- escape

\033- 쬥筠  ᨬ

\x1A- ⭠筠

\c[ - control ᨬ

\l-  ॣ ᫥饣 ᨬ

\u- 孨 ॣ -//-

\L-  ᨬ   ॣ  \E

\U-  孥 -//-

\E- ࠭⥫ ᬥ ॣ

\Q- ⬥ ⢨  ᨬ

⥫쭮    ᫥騥 ᨬ:

\w- 䠢⭮-஢  '_' ᨬ

\W-  䠢⭮-஢  '_' ᨬ

\s-  ஡

\S-   ஡

\d-  

\D-   

     <> ᨬ.  祭 ᫥⥫쭮 ਬ 䨪. :

\w+ - ᫮

\d+ - 楫 ᫮

[+-]?\d+- 楫  

[+-]?\d+\.?\d*- ᫮  窮

஬ ⮣   ᨬ. 騥  騥 ᨬ   ᬥ 祭.  :

\b- ࠭ ᫮

\B-  ࠭ ᫮

\A- 砫 ப

\Z-  ப

\G-  ⢨ m//g

࠭ ᫮ (\b) -   窠  ᨬ \w  \W. 

  ᨬ '\b' 砥 ᨬ backspace (࠭).

ᨬ \A  \Z -  '^'  '$'  ᫨ 砫ப '^'   ப '$'    ப  筮 ப  \A  \Z  砫   ᥩ 筮 ப.

᫨  蠡 ਬ 㯯஢ (㣫 ᪮)   ப 㯯 砥  '\'.

   蠡  । ࠦ    㯯   '$'. ஬ ⮣  ⥫ ६:

$+ - 砥 ᫥ ᮢ

$&-  ᮢ

$`-   ᮢ

$'-  ᫥ ᮢ

ਬ:

$s = < 1  2   3>;

if ($s =~ /(\d+)\D+(\d+)/)

{

print <$1\n>;#  '1'

print <$2\n>;# '2'

print <$+\n>;# '2'

print <$&\n>;# '1  2'

print <$`\n>;# ' '

print <$'\n>;# '   3'

}

 ᨨ 5 ᮤন ⥫ 樨 蠡:

(?#਩) - ਩  ⥫ 蠡.

(?:蠡)- 㯯஢   '( )'   ⭮ 뫪

(?=蠡)- <뢠> ।. 

ਬ/\w+(?=\t)/ ᮮ⢥ ᫮    ⠡  ᨬ '\t'  砥  १.

ਬ:

$s = <1+2-3*4>;

if ($s =~ /(\d)(?=-)/)#    ன ⮨ '-'

{

print <$1\n>;#  '2'

}

else { print <訡 ᪠\n>;}

(?!蠡)- <뢠> ।  栭.

ਬ:

$s = <1+2-3*4>;

if ($s =~ /(\d)(?!\+)/) #    ன  ⮨ '+'

{

print <$1\n>;#  '2'

}

else { print <訡 ᪠\n>;}

(?ismx) - <७> 䨪.  ਬ  蠡 ਬ 㦭  蠡 㪠 䨪.

ࠢ ॣ୮ ࠦ. (regex)

1.  ᨬ 砥 ᥡ ᠬ ᫨   ᨬ.᫨  㦭 ⬥ ⢨ ᨬ  ⠢।  '\'.

2. ப ᨬ 砥 ப  ᨬ.

3. ⢮  ᨬ () 砥  ᪮ '[]'          㪠  ᪮ ᨬ. ᫨  ᨬ  ᪮ '^' -     㪠 ᨬ      ࠦ.    㯮ॡᨬ '-' 騩  ᨬ. ਬ a-z   㪢 ⨭᪮ 䠢, 0-9 -   ..

4.  ᨬ,  ᯥ樠    '\'   몥 .

5. ୠ⨢ ᫥⥫쭮 ࠧ ᨬ '|'    ᪮   ᨬ.

6.  ॣ୮ ࠦ  㪠뢠 <蠡>   㣫 ᪮  뫠    '\'ࢠ ᪮ 砥  '\1'.




  ਮ


樠⨢ਮ⭮஢ 筠C᫥浪 㬥襭 ਮ,  砫 ப 㪠 樠⨢.

.

--

  ஭ ᯨ᪮ 

->

-++ -

ࠢ**

ࠢ! ~ \ 㭠 +  -

=~ !~

* / % x

+ - .

<< >>

- 㭠 

-< > <= >= lt gt le ge

-== != <=> eq ne cmp

&

| ^

&&

||

-..

ࠢ?:

ࠢ= += -= *=  ..

, =>

-ࠢ஭ ᯨ᪮ 

not

and

or xor


  ஭ ᯨ᪮ .

   ᠬ ᮪ ਮ.   ⭮ ६, 窨   , 䬥᪨  ᪨ ࠦ  ᪮,  㭪樨  ࠬࠬ  ᪮. ᪨ ⠪ 㭪権  ⠪    㭠  ᯨ᪮     ᥡ  㭪  ࠬࠬ  ᪮. ஡ ᬮ  <㭪樨>.

᫨ ᫥  ᯨ  ( print(),  ..)  㭠୮  (chdir(),  ..) ᫥  㣫 ᪮,    ᪮  訩 ਮ.      㭪樨. 

᫨ ᪮   ਮ ᯨ᪮ ஢  訩  訩  ⭮襭 ஢ ࠢ  ᫥  .

ਬ:

@i = ('a ','b ', print 'c ', 'd ');

print <\n>,@i,"\n";

:

c d

a b 1

   ᯨ᪮  print.   ᫥     訩 ਮ,  蠥 ਮ ࠢ ⮩. 

⮬ ࠢ  ਭ  ࠬ  print  ⠥ 'c d'    뢠  襭 樨  ᨢ @i  ᫥ print 뢠 .


 '->'

      ++  䨪  ॠ樨. ᫨ ࠢ   ⮨ [...]  {...} ࠦ,  ࠢ    ।⢥  ᨬ᪮ 뫪  ᨢ  .

 ⨢ 砥 ࠢ ஭  ⮤  ⮩ ᪠ ᮤঠ騩  ⮤,  ࠢ  ꥪ   . ஡ ᬮ  <>.


 ++ (६)  - (६).

  ࠡ ⠪     . ᫨  ⮨ । ६  祭 ६   1  祭 祭 ᯮ. ᫨ ᫥ ६   稭  ᫥ ਬ.

ॡ ६  ப ६     ᮡ. 

 ᨬ ⠥  ᢮  (訥, , )  뢠 ७ ।饣 ᨬ.  ࠧ ப ६  ࠬ ࠡ  ᫮ ६.

ਬ:

print ++($i = <09>);#  <10>

print ++($i = <a9>);# <b0>

print ++($i = <az>);# <ba>

print ++($i = <aZ>);# <bA>


 ** (  ⥯)

ਬ:

print 4**2#  16

print -4**2 #  -16 .. -(4**2)


 .

'!' - ᪮ 栭

'-' - 䬥᪨ 

'~' - ⭠  (  1)

'+' - 䬥᪨ 

'\' - 祭 뫪  ६ ( &  )


 <ਢ離> =~  !~ .

<> ᪠ ਣ   祭 ப ਬ  .  <ਣ>襭. 

=~ ᪨ 뢠   ࠦ  ୮ (pattern - ࠧ, 蠡, )  ࠢ.㬮砭 믮  ६ $_  ਢ離      ६ 㪠  .᪨१⮬㤥 ᯥ樨.᫨  ࠢ   ୠ  ࠦ,  १ ⮣ ࠦ ਭ  .   祭 䥪⨢.. 㤥 ஢  ६ ᯮ ணࠬ ⭮᭨த⢨.

!~祭=~⮫쪮 १ᮢ  (᪮ <>). ஡ ਬ  ஢ ਢ   <>.


⨯⨢ .

'*' - 䬥᪮ 㬭

'/' - 䬥᪮ 

'%' - 䬥᪨ 

'x' -  ७

 ᪠୮ ⥪ 頥 ப   ७ 稭 㪠  ࠢ .  ᯨ᪮ ⥪, ᫨    ᯨ᮪  㣫 ᪮ - ७ ᯨ᮪.

ਬ:

print '*' x 5;#  '*****'

print (1,2) x 3; #  121212


⨢ .

'+' - 䬥᪨ 

'-' - 䬥᪨ 

'.' - ⥭ (ꥤ) ப


 ᤢ.

'<<'-  ⭮  祭 ࠦ    ⢮  㪠  ࠢ.

'>>'-  ⭮ ࠢ 祭 ࠦ    ⢮  㪠  ࠢ.


 㭠 .

᪨  㭪樨   㬥⮬. 㣫 ᪮  ᪠.

 ⭮襭.

'<' - 䬥᪮ 

'>' - 䬥᪮ 

'<='- 䬥᪮   ࠢ

'>='- 䬥᪮   ࠢ

'lt'- ப 

'gt'- ப 

'le'- ப   ࠢ

'ge'- ப   ࠢ


 ࠢ⢠.

'=='१ true ᫨   ࠢ ࠢ (ࠢ)

'!='-  ࠢ

'<=>'- -1 ᫨    ࠢ, 0 ᫨ ࠢ,1 ᫨ .

'eq'- ப ࠢ

'ne'- ப  ࠢ

'cmp'-   '<=>' ਬ⥫쭮  ப


 ࠡ  ⠬.

'&' - ⭮ AND

'|' - ⭮ OR

'^' - ⭮ XOR


᪨  && (AND)  || (OR).

'&&'- ᫨  ࠦ 頥 false, ࠢ  믮.

'||'- ᫨  ࠦ 頥 true, ࠢ  믮.

⫨稥   ஢   砥  ⮬,    頥 祭  0  1.     頥 १ ࠦ.


  '..'

 ࠡ     ⥪.  ᯨ᪮ ⥪ १  ᯨ᮪  ⠬. ணࠦ ᫥ - ࠢ.

祭   ᯨ᪠㢥稢1.

㤮横.. ⢮  ᥣ ᯨ᪠ 楫. ⮬ ⥫    ᫨誮 让 .

ਬ:

for $i (1..4)

{ print "$i ";

}

: 1 2 3 4

 ᪠୮ ⥪ १ - ᪮ 祭.  '..'  ⠭ ᢮ ᮡ⢥ ﭨ.  false      ࠭ false.  ⮫쪮  ࠭ ⠫ true १ - true    ࠢ true, ᫥ 祣 १  - false. ᫨    ஢ ࠢ ࠭  ᯮ  '...'.

ࠢ ࠭    १ false  ࠭     १ true. ਮ⭮  '..'   祬 '&&'  '||'. 頥 祭 ᫨ flase - 㫥 ப, ᫨ true - 浪  稭  1. 浪      . 

᫥ 浪   ப "E0"     祭   䨪஢ ᫥ 祭.

ਬ:

@䠢 = ('a'..'z'); # ᨢ  㪢 ⨭᪮ 䠢

@ = (0..9);# ᨢ 


᫮  '?:'

  ࠡ⠥ ⠪     . ᫨ ࠦ । '?' ⨭  믮 㬥 । ':' -  ᫥ ':'.

ਬ:

$i = 1;

$i > 1 ? print <> : print <>;

: 


 ᢠ.

'=' -   <᢮> ࠢ 祭 ६ ᫥   㯯 ஢  ࠬ  ..

$i += 2;

⭮

$i = $i + 2;

⠫  ⮩ 㯯 ࠡ 筮.

⨬ ᫥騥 :

**=

+=-=.=

*=/=%=x=

&=|=^=

<<= >>=

&&= ||=

ਮ ᥩ ⮩ 㯯 ஢ ࠢ ਮ '='.


 ',' ()

 ᪠୮ ⥪ 믮  㬥, १  ⥬ ࠢ   १  १ ⢨ .

 ᯨ᪮ ⥪  ࠧ⥫ ⮢ ᯨ᪠  砥 㪠   ᯨ᮪.


 ᪮ not (栭).

 not 頥 ⨢ 祭 祭 ࠦ ࠢ.  ⥭ '!'   祭  ਮ.


 ᪮ and ().

믮    ࠦ. ⥭ '&&'   祭  ਮ  <⪮> ⢨. . ᫨  ࠦ ࠢ false -   믮.


᪮ or ().

믮    ࠦ. ⥭ '||',   祭  ਮ  <⪮> ⢨. . ᫨  ࠦ ࠢ true -   믮.


᪮ xor (᪫饥 ).

믮 ᪮ ᪫騥 . ᥣ 믮  ࠢ   ࠦ.


  騥  .

    몠  ⠪ :

㭠୮ &-  .  ⮣ ਬ '\'.

㭠 *- ॠ.

(TYPE)- ᮢ饭 ⨯.


 ࠭⥫ ப.

筮 ࠭⥫ ப  ⠥ ࠫ,      믮騥 ࠧ த ௮    蠡.   ᠬ  㤮   ࠭⥫.  ᫥饩 ⠡ ਢ  祭 ਠ⮢.  ᪮ '{}'   ᨬ ᯮ㥬  ࠭⥫.  砥 ᯮ짮 ᪮ (㣫 '()',  '[]', 䨣 '{}', 㣫 '<>')  砫 ⠢ 뢠 ᪮    뢠.



 㬮砭㭪௮

----

''q{} Literal

""qq{}ࠫ

``qx{}

qw{}᮪ ᫮ 

//m{} 

s{}{}⠭ 

tr{}{}࠭


 ப ᪠ ௮  ६ 稭騥  ᨬ '$'  '@' - ௮ ..  ப ⠢ 祭 ப  ᨢ.

 ᫥⥫쭮 ᨬ  ᯥ樠쭮 祭:

\tᨬ ⠡樨

\nᨬ  ப

\r

\fॢ ଠ

\v⨪쭠 ⠡

\bbackspace ()

\a

\eescape

\034쬥 ᨬ

\x1a쭠 ᨬ

\c[ ᨬ ࠢ

\l ॣ ᫥饣 ᨬ

\u孨 ॣ ᫥饣 ᨬ

\L ॣ   ᨬ  \E

\U孨 ॣ   ᨬ  \E

\E࠭⥫ ᬥ ॣ

\Q⬥ ⢨ ᨬ  \E

 ௮  ॣ ࠦ.  믮  室 ᫥ ௮樨 ६ ⮬  蠡  ⠢ ६.  ⬥ ௮樨 ᯮ '\Q'. ᫨  ਬ  ࠭⥫  ७ ࠭⥫ ࠡ  .


?PATERN?

?PATERN?

⢨ ⮣  筮 /蠡/  믮  ࢮ ᮢ.  㤮  ᪠    ப    ⢥ 䠩.   祭 㤠  ⮬  ᫥      㤥.

m/PATERN/gimosx

/PATERN/gimosx

  ப   (蠡).  ᪠୮ ⥪ 頥 ᪮ 祭 true (1)  false (''). ᫨ ப  㪠   ஢ '=~'  '!~'    ப $_

樨:

g-  .   宦.

i- ࠢ    ॣ (孨  )

m- ப 筠.

o- 室 

s- 筠 ப

x- ᯮ ७ ॣ ࠦ.

᫨ '/' - ࠭⥫  砫쭮 'm'  .     ⢥ ࠭⥫    ᨬ ஬ ஡. 

PATTERN  ᮤঠ ६   ௮஢ (४஢)  ࠧ   ᫥.

६ $)  $|  ௮. ᫨     ⠪ 蠡 ௮஢  ࠧ -  /o.

 室   横 ᪠  㢥祭 த⢨  ᫨   祭 ६  ⮣   .

᫨ PATERN - 㫥 ப  ᯮ ᫥ ॣ୮ ࠦ.

 ᪠୮ ⥪ 頥 ᯨ᮪  ண १ 믮 ࠦ  ᪮ ୠ ($1, $2, $3...).

     $1.

ਬ:

$a = </usr/local/perl/perl.bin>; # 㥬 ப

: ᨢ @dirs   ४਩.

襭:

 ⮩ ᯮᮡ ᯮ짮 split('\/'),   ⢥ ਬ ᯮ㥬 ᪮.

@dirs =~ m[/(\w*)/(\w*)/(\w*)/(\w*)]

 'm[' - ᯮ짮  ᪮  ࠭⥫.

(\w*)- 蠡 䠢⭮஢ ᫥⥫쭮.

 १ @dirs ࠢ ('usr', 'local', 'perl')



q/ப/ 'ப'

ப ࠫ.  ௮.  ப ࠧ蠥 ᯮ짮 \'  \\  祭 ᨬ '  \ .

ਬ:

print q#ਢ.#;#  ਢ.

print 'O\'K';# O'K



qq/ப/ <ப>

௮㥬 ப.

ਬ:

$var = 13;

print <\$var = $var>;

:

$var = 13



qx/ப/ `ப`

砫 ப ௮  ⮬ 믮 ⥬ .

ਬ:

print `date`;

:

Thu Nov 14 13:36:49 MSK 1996


qw/ப/

頥 ᯨ᮪  ண - ᫮ ப ࠧ஡.

ਬ:

print qw/஥  ᯠᥬ!/; # ('஥','','ᯠᥬ!')

:

஥ᯠᥬ!

 ਬ :

use POSIX qw( setlocale localeconv )

@EXPORT = qw( proc1 var );



s/蠡/ப/egimosx

  蠡   砥 ᯥ  ப.

頥 ⢮ ந ⠭  false (0). ᫨ ப  ன    㪠 ( =~  != )  ᯮ ६ $_ .

᫨  ⢥ ࠤ⥫ '/' ஫짮   (')  ௮樨  㤥   ਬ ६  蠡  ப.

樨:

e- ᬬਢ ࠢ   ࠦ.

g-  .

i-  ࠧ ॣ 㪢

m- 筠 ६

o- ஢ 蠡  ࠧ

s- 筠 ६

x- ७ ॣ୮ ࠦ

⥫ '/'     䠢⭮-஢ ᨬ ஬ ஡.

ਬ:

$var = <12345>; # 室 ப

$var =~ s/1/0/; #  '1'  '0'.  02345

$var =~ s(5)(.); #  '5'  '.'  0234.

  ⢥ ࠧ⥫ ਬ ᪮ ⮬ ப

   ᪮.

$var =~ s/\d*//;   .  '.'

$var =~ s///g; #   ''  ''.  '.'

$var = <12 34>; #  祭

$var =~ s/(\d\d) (\d\d)/$2 $1/; #  ⠬ ᫠.  '34 12'.


tr/⠡1/⠡2/cds

y/⠡1/⠡2/cds

  ᨬ  <⠡1>  ᮮ⢥騩 ᨬ  <⠡2>.  - ⢮   ࠭.   =~  !=  믮  ப $_.  ᮢ⨬  ணࠬ sed  tr   'y'.

樨:

c-  <⠡1>

d-      ᨬ.

s- <> 騥  ᨬ.

᫨ 㪠  /d⠡2 ᥣ   .

㣨 ᫮ ᫨ ⠡2  祬 ⠡1  ᨬ  ⠡1  ᥣ. ᫨ ⠡2 - null   ᨬ ப   .  㤮   ⢠ ᨢ  ப ।    ᦠ  ᨬ ਬ ஡.

ਬ:

$s = <hello>;# 室 ப

$s =~ tr/a-z/A-Z/;#   㪢  訥. 

# 'HELLO'

$s = 'Hel....lo';

$s =~ tr/a-zA-z/_/c;#    㪢  '_'

#  'Hel____lo'

$s =~ tr/_/ /s;#  '_'  ' '  ᦠ.

#  'Hel lo'

$s =~ tr/a-zA-Z /a-zA-Z/d; #    㪢.  'Hello'

᫨     ᨬ ᪮쪮 ࠧ 㪠  ⠡1  ਬ ⮫쪮 ࢠ .


 -뢮.

   ᪮쪮 ஢ -뢮.   ᪮  ᨬ '`' - 業. ப   ᪮ ਭ  ⥬   १  ⢨ 頥  <ᥢ> ࠫ.  ᪠୮ ⥪  ப ᮤঠ  १,   ᯨ᪮ - ᯨ᮪  ண - ப १. 

 믮  ࠭  ६ $? .

   뢮 룫廊  '<䠩>'.

᫥ <䠩> ਢ  ⥭ ப  䠩.    '䠩'    䠩,  㪠⥫ 䠩  ᮧ 㭪樥 open().  ᪠୮ ⥪ ⠥  ப   ᨬ '\n' - ॢ ப,   ᯨ᪮  䠩 ⠥  ᯨ᮪  ண  ப 䠩.

 砥 㦥  䠩 १   ।  ਭ  false. ᫨  㪠 ६ १   㬮砭  $_. ⥫ 䠩  㬮砭 STDIN - ⠭ .

ਬ:

while(<>) { print; }; #   뢥  䠩 STDIN

  '<>'   ⫨⥫쭠 ᮡ. ᫨   ப   㬥⮢  ⠥ ⠭ , ᫨  㬥     䠩  ᫥⥫쭮 .

᫨  㣫 ᪮ ᠭ ६  ᮤন ⮩ ६ ⠥  㪠⥫ 䠩  뫪  㪠⥫ 䠩. ᫨ ⠪ 㪠⥫    ᮤন ६ ਭ  蠡  䠩  १ -  䠩  ᪥ 室  蠡.

ਬ:

while(<*.pl>) { print;}; #     ls *.pl

@files = <*>;# ᨢ @files ᮤন  䠩  ४ਨ

  ᤥ: @files = glob("*"); ..  ᪮  ᯮ짮 ६.


ﭨ ⠭.

    믮  ᫥  ਮ 樨.

 ⠭ ᨬ ᫥ '\' ,  ⥭樨 ப, 䬥᪨ ࠦ ᮤঠ騥 ⮫쪮  ⠭,      樨  ⢥ 㢥稢 ᪮ 믮 ணࠬ.


᫥ 䬥⨪.

 㬮砭  믮 䬥⨪  饩 ⮩,  ᫨  㪠:

use integer;

  㤥 ᯮ짮 楫᫥ 䬥⨪   ⥪饣 ,       ⬥  ᢮ ।  :

no integer;




஥ 㭪樨


஥㭪樨ᯮࠦ  ࠧ   ⥣ਨ: ᯨ᪮  㭠 .    ਮ  ⭮襭   ',' - .᪮⢮ (ᯨ᮪)㬥⮢,㭠⮫쪮. ࠧ  蠥㬥㭠୮ࠧ 㬥 ᯨ᪮.

㬥㭠୮ਭ筮 ᪠୮⥪ᯨ᪮᪠୮⠪

ᯨ᪮祬 ᪠ 㬥  묨.  쭥襬 ᯨ᪮ 㬥㤥᫮'LIST'   㭪  ᯨ᮪ 㬥⮢ ࠧ ⮩. 

㬥 㭪権  㣫᪮⠪ ࠧ<㭪>ਮ   祭ᯨ᪮㭠 ।䨪஢ਮ⮬.஡᫥ 㭪樨᪮祭.⮬ ⥫!

ਬ:

print 1 + 2 + 3; # १ 6

print(1+2)+3;# १ 3

print (1+2)+3;#  3

print (1+2+3);# 6

᫨ 㭪 頥 १   ᪠୮ ⠪   ᯨ᪮ ⥪   室  訡 - ᪠ c । 祭  ⮩ ᯨ᮪.

 ࠢ:

  饣 ࠢ ८ࠧ ᯨ᪠  ᪠!

   㭪  ᢮  祭  ᪠୮ ⥪.

   ⢮ ⮢  ᪠୮ ⥪.  㣨   ᯨ᪠  ᫥  ⢮ ᯥ 権.  ᢮ ᫨  ᯥ樠쭮  㪠뢠.


 '-X'.

-X 㪠⥫ 䠩

-X ࠦ

-X

஢ઠ 䠩,  'X'    ᠭ 祭. 

 㭠    㬥⮬ -   䠩  㪠⥫ 䠩. ஢   ᫮. ᫨ 㬥  㪠   祭 ६ $_.   -t STDIN.

 1 ᫨ true  '' ᫨ false  । 祭 ᫨ 䠩  . ᬮ  ࠭   㭠   ᮮ⢥騬 ਮ⮬. 㬥    㣫 ᪮.

'X'  ᫥騥 祭:

-r ࠧ襭  ⥭ 䥪⨢ uid/gid

-w  -//-

-xᯮ -//-

-oਭ 䥪⨢ uid (䨪 짮⥫)

-R ࠧ襭  ⥭ ॠ uid/gid

-W  -//-

-Xᯮ -//-

-Oਭ ॠ쭮 uid

-e䠩 

-z⮩

-s ⮩

-f ⥪

-d४

-lᨬ᪠ 뫪

-ppipes ()

-Ssocket ()

-bᯥ樠쭮 筮 ன⢮

-c-//- ᨬ쭮 -//-

-t㪠⥫  - tty

-u⠭  setuid

-g-//- setgid

-k-//- sticky

-T⥪⮢ 䠩

-B

-M<> 䠩      ਯ

-A  ᫥ ⥭

-C  ᫥ 䨪樨 inode


abs ࠦ

᮫⭮ 祭 ࠦ 


accept NEWSOCKET, GENERICSOCKET

  ᮪  譥 . 筮 ⥬ 맮 accept(). 頥   false  砥 㤠.


alarm ᥪ㭤

᫠ ᨣ SIGALARM ⥪騬   祭 㪠 ஬⪠ ६.  ⨬  ᪮쪮 맮 ६   ஬⪥ ६.

頥 ⮪ ६ ।饣 稪.


atan2 Y, X

⠭ ⭮襭 Y  X  ।  -pi  +pi.


bind ᮪, 

 ⥢  ᮪.  ⥬ 맮 bind. 頥 true  砥 ᯥ  false .

 -   ᮪.


binmode䠩

 䠩  筮 (binary) ० 㯠.

 筮 ०   ᨬ CR LF ࠭᫨  LF,   뢮 LF ࠭᫨  CR LF.


㭪 bless

bless뫪, 

bless 뫪

 㭪 ।  ꥪ 㪠 뫪 ਭ . ᫨   㪠   ⭮  ⥪饬 . 筮  ᫥    ꥪ. 

室 易⥫쭮 㪠뢠   ᫨ ।塞 ꥪ  ᫥ ᮬ-⮬.


㭪 caller

callerࠦ

caller

頥 ⥪ 맮 ⥪饩 ணࠬ.

 ᪠୮ ⥪ true ᫨  ணࠬ  楤 맢 ࠬ eval()  require()  false - .

 ᯨ᪮  ᯨ᮪ ($package, $filename, $line)



$package -  

$filename -  䠩 

$line -  ப 㤠  ᤥ 맮.

᫨ 㪠 ࠦ  頥 ᯨ᮪:

($package, $filename, $line, $subroutine, $hasargs, $wantargs)

ࠦ । <㡨>  ᬮ ⥪ 맮.

$subroutine -  ணࠬ

$hasargs - 騥 㬥

$wantargs - 室 㬥

ਬ  㭪樨  DB  頥  ⠫ ଠ.  ᯨ 㬥⮢  ᯨ᮪ @DB::args.


chdir ࠦ

३  ४ 㪠 ࠦ. ᫨ ࠦ   ३  <譨> ४.

頥 true  砥 ᯥ  false - 㤠.


chmod ᯨ᮪

 ࠢ 㯠  䠩 㪠  ᯨ᪥.

   ᯨ᪥ - ᫮ ,筮 쬥筮 祭 ࠢ.

頥 ⢮ 䠩  뫨  ࠢ.

ਬ:

chmod 0666 'f1', 'f2', 'f3';


chomp ६

chomp ᯨ᮪

chomp

   ப ᨬ 㪠 ६ $/.

筮  'LF'. 頥 ⢮ 㤠 ᨬ. ᫨ ६  㪠  ᯮ ६ $_.

᫨ 㪠 ᯨ᮪  ࠡ뢠  ப ᯨ᪠  頥 饥 ⢮ 㤠 ᨬ.


chop ६

chop ᯨ᮪

chop

 筮 㭪樨 chomp  ᥣ 㤠 ᫥ ᨬ ப.


chown ᯨ᮪

 <>  <㯯> 䠩 ᯨ᪠.

  -   , ன   㯯   ᯨ᮪ 䠩.

 設⢥ -⥬   ᬮ ᬥ  ᫨   㯥௮짮⥫,    㯯 ᫨     <> 㯯.


chr ᫮

頥 ᨬ  㪠  ஢.


chroot ४

 <୥> 㪠 ४.

<୥> -   ணࠬ    뫠  '/'.


close 䠩

  䠩  ⮪.   ᯮ짮

᫨     䠩 뢠 ⭮ ..  㤥 ⮬᪨ 뢠  맮 open().


closedir ४

 ४  㭪樥 opendir().


connect ᮪, 

易  㤠 ᮪⮬.  㭪  ⥬ 맮 connect(). 頥 true  砥 ᯥ

 false  訡.


cos ࠦ

ᨭ ࠦ  ࠤ.


crypt⥪, salt

 ⥪. 筮 ⥬ crypt().



dbmclose 

뢠      .


dbmopen , , ०

樨஢ 㪠     । ०.

  ⮬    ॠ 祭 㤮 堭 ࠡ    ⨯ dbm, ndbm, sbdm, gdbm  Berkeley DB.  ⮣ 㦭 易 ()    .  ࠡ  ﬨ  믮 ⠪     (樠⨢ ᨢ).

 ஡ ᬮ ᠭ 㭪樨 AnyDBM().


define ࠦ

頥 true ᫨ 祭 । ()  false ᫨ .  樨   । 祭, ਬ ⥭ ᫥  䠩, ᯮ짮  । ६, ⥬ 訡  ..

 㭪  ࠧ 㫥   । 祭, ।   । 㭪権  뫮.  ᯮ짮 ।     頥 ।          .


delete ࠦ

 祭  . 頥 㤠塞 祭   । ᫨  祣  㤠.

  ᨢ 㦥 $ENV{} -  㦥.

   易    - 㤠    .


die ᯨ᮪

᫨ ணࠬ  뫠 饭  eval()  㭪 뢮 ᯨ᮪  ⮪ STDERR  蠥 ࠡ ணࠬ    ६ $!. ᫨ $! ᮤন 0    ($? >> 8). ᫨   0    255.

 맮  eval() ᮮ饭  訡   ६ $@  eval() 蠥  । 祭.   ஡뢠 訡 樨    .

᫨ ப  ᯨ᪠  蠥 ᨬ '\n'  ⥫쭮 ⠥  ப ਯ 㤠 맢 㭪   室 ப ᫨ ⠪ .


do BLOCK

  ᮢᥬ 㭪.  頥 祭 ᫥  .  ᯮ 横᪨ 䨪

BLOCK ᯮ । ஢મ ᫮ 横  ⫨稨   横.


do ணࠬ

ॢ訩 ⮤ 맮 ணࠬ.


do ࠦ

祭 ࠦ ਭ   䠩  ਯ.

砫쭮  ਬ﫮  祭 ணࠬ ⥪.

 ࠢ쭥 ᯮ짮 맮 use()  require()  ᯥ稢 ஫訡  襭.


dump ⪠

믮 <> ⥪饩 . ਬ﫮   ஫짮 ணࠬ undump    ⥪騩 ᯮ塞   ணࠬ ᫥ 樠樨  ६.

믮 ⮩  ணࠬ 㤥 稭 ஬ goto ⪠. ᫨ ⪠ 饭   ᭠砫.

!        묨

  ᯮ ணࠬ.


each 

頥 2- ᨢ.   -  ன - 祭 ᫥饣  .  <ᬠਢ>  祭   । 浪.  ६ 横 ந室 ⮫쪮 ᫥ 宦 ᥣ ᨢ.


eof()

eof 䠩

eof()

eof

頥 1 ᫨ 믮 ⥭ ᫥   ⥭   ⮣ 䠩. 㬥⮬   ࠦ 饥 騩 㪠⥫ 䠩.  㭪  ᯮ짮  ⥭ 䠩   ନ.

᫨ 㬥  㪠  ᯮ ᫥ ⠥ 䠩.

ᯮ짮  ଥ eof() 楫ᮮࠧ ਬ  横 while(<>)  ।  ⮫쪮 ᫥ 䠩 

ᯨ᪠. ਬ eof(ARGV)  eof  ।   䠩  ᯨ᪠.


eval ࠦ

eval ࠦ 

eval 

ࠦ ᪠  믮  筠  ணࠬ.

   ⥪ ⥪饩 ணࠬ ⮬  ᯮ짮 㦥 । ६  ணࠬ.

ৢ頥 १ ᫥     祭  return. ᫨ 㦨 ᨭ⠪᪠ 訡  믮  die 頥  । 祭  ६ $@ ᮤন ᮮ饭  訡. ᫨ 訡  뫮  $@ ᮤন 㫥 ப.  ᢨ 㬥  祭 ६ $_.


exec ᯨ᮪

믮 ⥬   ᯨ᪠  믮 ணࠬ 蠥. ᫨  室    ਬ 㭪 system(). ᫨  ᯨ᪥ ⢮ 㬥⮢  1  ᯨ᮪  ᨢ  ⢮ ⮢  1  믮 ⥬ 맮 execvp()  㬥⠬  ᯨ᪠.

᫨  ᪠ 㬥   ᪠  ࠡ ᨬ  ᫨    祭 㬥 ।  /bin/sh -c  쭥襩 ࠡ⪨.

᫨ ᨬ   㬥 饯  ᫮  । ⥬ 맮 execvp()   䥪⨢.

! exec()  system(0)  뢠  /뢮 ⮬ 室 ⠭ ६ $|  ।饭  室 ଠ樨.


exists ࠦ

頥 true ᫨  㪠    ᫨  ।  祭.


exit ࠦ

믮 ணࠬ 蠥   ࠦ.


exp ࠦ

頥 e (᭮ ࠫ쭮 䬠)  ⥯ ࠦ.


fcntl 䠩, 㭪, ᪠

믮 ⥬ 맮 fcntl().  ᯮ짮 易⥫쭮 믮 use Fcntl;


fileno 䠩

頥 ⥫ 䠩   㪠⥫ 䠩.


flock 䠩, 

⥬ 맮 flock()


fork

⥬ 맮 fork(). 頥 pid ⮬  த⥫  0  ⮬  砥 ᯥ  - । 祭.


format

⨢ 㭪 . । ଠ 뢮   write. ஡ ᬮ  ଠ.


formline ଠ, ᯨ᮪

७ 㭪 ᯮ㥬  format. ଠ 뢮 ࠬ஢  ᯨ᪠.  頥  ६ $^A.㭪 write  뢮 祭 ⮩ ६,   ⠪     ⥬ . 筮 format 믮  맮 formline   ப ,  formline  ࠧ ப ଠ.    ᨬ '~'  '~~' ᬠਢ  ଠ   ப ⮬ 室 ᯮ짮    ᠭ   ଠ.


getc 䠩

getc 䠩

getc

⠥  頥 ᨬ  㪠 䠩.

᫨ 䠩  㪠  ⠥ STDIN. ᫥  䠩 頥  ப.


getlogin

頥 ⥪騩 login  䠩 /etc/utmp

 ਬ  䨪樨 짮⥫   ⠪ ᨫ쭮 <>  getpwuid().


getpeername ᮪

頥 㯠  㤠 ᮪.


getpgrp PID

頥 㯯   㪠 PID. ᫨ 㬥  頥 㯯 ⥪饣 .


getppid

頥 PID த⥫᪮ .


getpriority WHICH, WHO

頥 ⥪騩 ਮ , 㯯 ᮢ  짮⥫.




㯯 ⥬ 맮


getpwnam NAME

getgrnam NAME

gethostbyname NAME

getnamebyname NAME

getprotobyname NAME

getpwuid UID

getgrid GID

getservbyname NAME, PROTO

gethostbyaddr ADDR, ADDRTYPE

getnetbyaddr ADDR, ADDRTYPE

getprotobynumber NUMBER

getservbyport PORT, PROTO

getpwent

gethostent

getnetent

getprotoent

getservent

setpwent

setgrent

sethostent STAYOPEN

setnetent STAYOPEN

setprotoent STAYOPEN

setservent STAYOPEN

endpwent

endgrent

endhostent

endnetent

endprotoent

endservent

  㭪樨   ⥬ 맮.

 ᯨ᪮ ⥪  ᫥騥 ᯨ᪨:

($name, $passwd, $uid, $gid, $quota, $comment, $gcos, $dir, $shell) = getpw*

($name, $passwd, $gid, $members) = getgr*

($name, $aliases, $addrtype, $length, @addrs) = gethost*

($name, $aliases, $addrtype, $net) = getnet*

($name, $aliases, $proto) = getproto*

($name, $aliases, $port, $proto) = getserv*

 ᪠୮ ⥪ 頥   - 㣮  ᨬ  ⨯ 㭪樨.

 $members  맮 getgr ᮤন ࠧ ஡  童 㯯.

@addrs ᮤন IP  ஢   ୥  㯠 .

 ᯠ ਬ: ($a, $b, $c, $d) = unpack('C4',$addr[0]);


getsockname ᮪

頥 㯠  ᮪ 쭮 設.


getsockopt ᮪, ஢, 

頥  ᮪.


glob ࠦ

頥 ᯨ᮪ 䠩 㤮⢮ ࠦ  '*'    ls.


gmtime ࠦ

ॢ ⭮ ६ 祭 㭪樥 time()  ६  ਭ.

筮 ᯮ  :

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=gmtime(time);


goto ⪠

goto ࠦ

goto &ணࠬ

᫮ 室  .   室        樨஢ ਬ ணࠬ  横 foreach  ..

 ଠ ਬ  ᪮ । 室.

ਬ:

goto ('⪠1', '⪠2', '⪠3')[$i];

  $i = 0 㤥 室  '⪠1', $i = 1  '⪠2'  ..

 ଠ (goto &ணࠬ) 쭮 <> ⮤   뢠 ணࠬ  ⥪饩.  ᯮ  ⮤ ⮧㧪  㦭   楤    ⥪饩 -  뫠 맢 ࠭.


grep , ᯨ᮪

grep ࠦ, ᯨ᮪

믮   ࠦ    ᯨ᪠. ६ $_ ᮤন ⥪騩 .

頥 ᯨ᮪ ⮢  묨 ࠦ  १ true.

 ᪠୮ ⥪ 頥 ⢮ १⮢ true.


hex ࠦ

ਭ ࠦ  ப ⭠   頥 筮 祭.


import

   ஥ 㭪樨 import,   ⮤   ண 㫨  ᯮ஢  

㣨 . ஡ ᬮ 㭪 use().


index ப, ப, 

index ப, ப

頥  ࢮ 宦 ப  ப 稭  㪠 樨. ᫨    ࠢ 稭  砫 ப.  樨   0 ᫨ ⮫쪮   祭 ஥ ६ $[. ᫨ ப    १  ࢮ 樨  1. 筮  -1.


int ࠦ

頥 楫  ࠦ.


ioctl FILEHANDLE, FUNCTION, SCALAR

믮 ⥬ 맮 ioctl().  砫 ணࠬ 室 㪠: require <ioctl.ph>;


join ࠦ, ᯨ᮪

 ப ᯨ᪠  ᨢ   ப   ࠧ⥫ ࠢ ࠦ.


keys 

頥 ᨢ  祩 .  ᪠୮ ⥪ - ⢮ 祩. 冷 ᫥ 祩 祭 浪  each 㭪樨.


kill ᯨ᮪

᫠ ᨣ ( ) 㪠  ᯨ᪥ ᠬ. 頥 ⢮ ᮢ  ᨣ ਭ﫨.


last ⪠

last

㭪 筠 break  . 뢠 横  室  㪠 . ᫨ ⪨   訩 譨 横.

 continue  믮.


lc ࠦ

८ࠧ ப  㪢  ॣ.


lcfirst ࠦ

  㪢 ப  .


length ࠦ

頥  ப ࠦ.


link OLDFILE, NEWFILE

 䠩 NEWFILE 易  䠩 OLDFILE.


listen SOCKET, QUEUESIZE

믮 ⥬ listen().


local ᯨ᮪

 ᫥ ६    ⥪饬   ணࠬ. ᫨ 㪠      室   㣫 ᪮. ।⥫쭥 ᯮ짮 㭪 my().


localtime ࠦ

८ࠧ 9- ᨢ 頥 㭪樥 time ⭮⥫쭮 ⭮ ६. ॡ :

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst)=localtime(time);


log ࠦ

頥 ࠫ  ࠦ.


lstat 䠩

lstat ࠦ

    ⥬ 맮 stat()  ⥫쭮 뫪  䠩   ᠬ 䠩.


m//

 ᮢ.   <>


map , ᯨ᮪

map ࠦ, ᯨ᮪

믮   ࠦ    ᯨ᪠.

頥 ᯨ᮪ १⮢.


mkdir ४, ࠢ

 ४  㪠묨 ࠢ 㯠. 頥 1  ᯥ  0  㤠.


msgctl ID, CMD, ARG

⥬ 맮 msgctl() System V


msgget KEY, FLAGS

⥬ 맮 msgget() System V


msgsnd ID, MSG, FLAGS

⥬ 맮 msgsnd() System V


msgrcv ID, VAR, SIZE, TYPE, FLAGS

⥬ 맮 msgrcv() System V


my ᯨ᮪

 묨 ६  ᯨ᪥.

᫨      室   㣫 ᪮.


next ⪠

next

祭 continue  . 室  ᫥饩 樨  横.

᫨  横   continue  ⠪  믮.

᫨ ⪠  - 室  訩 ७ 横.


no Module ᯨ᮪.

᪫ ᯮ짮 㪠 㫥.


oct ࠦ

頥 筮 ᫮ ।⠢ 쬥묨 ࠬ.


open 䠩,ࠦ

open 䠩

 䠩  㪠 . 㬥 <䠩> -  䠪᪨ 㪠⥫   ᠭ 䠩. ᫨  (ࠦ) 䠩    ⠥ ⠪    㪠⥫ 䠩. 

᫨ ।  ⮨ ᨬ '<'  䠩 뢠 ⮫쪮  ⥭ (祭  㬮砭). ᫨ '>' -  .

᫨ '>>' -   ᥩ. '+>'  '+<' - 䠩   ⥭   ६.

᫨  䠩 稭  ᨬ '|'   ⠥ ⥬   室 ன 뢮  (⮪).

 '-' - ⠭ 室 (STDIN), '>-' - ⠭ 뢮 (STDOUT).

㭪 頥 true  ᯥ  false - 㤠.

᫨  (ࠦ) 稭  ᨬ <>&>  ⮪  ⠥  㪠⥫ 䠩  뢠 ୮. 

 '&'   ᫥ '<', '>>', '+>', '+>>'  '+<'.  ୮   ᮮ⢥᢮ ࢮ.

ࠦ  <<&=N>  N -᫮, ⭮ ⥬ 맮 fdopen().

᫨  <|->  <-|>  ந室 <饯> (fork)   ⮬  த⥫.  ⮬ 頥   ⮬ (PID)  த⥫᪮   0 -  ⮬.  ⮬ /⥭  䠩 த⥫᪨ ᮬ ਭ  ⥭/ ⮬.  ⮬  ⠭ /뢮. 

⥫᪨   襭 ⮬ ᫥  ⮪  砥  襭  ६ $?.

 䠩   ᮤঠ ஡   砫 ⠪   .


opendir 㪠⥫, ࠦ

 ४   ࠦ  ࠡ⪨ 㭪ﬨ readdir(), telldir(), seekdir(), rewinddir()  closedir().

頥 true  ᯥ.


ord ࠦ

頥 ascii  ࢮ ᨬ ࠦ.


pack 蠡, ᯨ᮪

뢠 ᯨ᮪     蠡.

 -  ப ᨬ 뢠 冷  ⨯ 㯠 祭.

A- ⥪⮢ ப,  ஡.

a- ⥪⮢ ப,  0 ᨬ.

b- ⮢ ப ( 㬥 )

B- ⮢ ப (뢠 㬥 )

h- ⭠筠 ப ( 訩  - )

H- ⭠筠 ப (訩  )

c- ᨬ  

C- ᨬ  .

s- ⪮ 楫 ( )  .

S- ⪮ 楫  .

i- 楫 ( )  .

I- 楫  .

l-  楫 (4 )  .

L-  楫  .

n- ⪮  <⥢> ଠ.

N-   <⥢> ଠ.

v- ⪮  <VAX> ଠ.

V-   <VAX> ଠ.

f- single float.

F- double float.

p- 㪠⥫  ப ࠭祭 0.

P- 㪠⥫    䨪஢ .

u- 㯠 uuencode.

x- -

X- १ࢭ .

@-  ﬨ .

  㪢   ᫮ 饥 ⢮ ஢.

  ⨯  ᪫祭 'a', 'A', 'b', 'B', 'h'  'H', 㯠뢠 ᨬ쭮  ⢮ 祭  ᯨ᪠.

 '*' ᫥ ⨯ 砥 ᯮ짮 ⠢訥 ࠬ.

 'a'  'A' ᯮ ⮫쪮  祭  ᯨ᪠   ⮪   -ᨬ  ஡ ( ᯠ  ⨯ 'A' ஡  㫨 뢠,   'a' - ).

 'b'  'B' 㯠뢠 ப  㪠 ᫮ .

    'h'  'H'  ᫮  ().

'P' - 㯠뢠 㪠⥫    㪠 .

᫠  饩 ⮩ (floats  double) 뢠  ⠭⭮   設 ଠ    ࠧ묨

 ࠧ ⨯ 設. ,   ᥣ ᯮ  筮 (double) ⮬ 㯠  ᯠ 

⨯ 'f' ਢ   筮.

  ᯠ  㯠 ᮢ襭 .

ਬ:

print(pack(<ccc>,65,66,67)); #  ABC

print(pack(<A4A3>,"ab","cdefg")); # <abcde>

print(pack(<a4a3>,"ab","cdefg")); # <ab\0\0cde>



pipe READHANDLE, WRITEHANDLE

祭 ⥬ pipe().


pop ᨢ

  頥 ᫥  ᨢ.

 ᨢ 㬥蠥  1.   । ᫨ ᨢ ⮩. ᫨  ᨢ     @ARGV   ணࠬ  @_  ணࠬ.


pos ᪠

頥 ᬥ饭  ᫥ m//g ᪠.


print 䠩 ᯨ᮪

print ᯨ᮪

print

뢮 ப  ᯨ᮪ ப  䠩. 頥 true  ᯥ. 㬥 䠩   ᪠୮ ६ ᮤঠ饩  㪠⥫ 䠩 ᫨    ⢫ 뢮  ⠭ 室 ⮪ STDOUT (᫨  뫮 맮 select()).

᫨ ᯨ᮪   뢮 祭 ६ $_.

 뢮  㬮砭  㣮 䠩 室 ᯮ짮 㭪 select().

  print ࠡ⠥  ᯨ᪮ ⥪,    ᯨ᪠ ⠪    ᯨ᪮ ⥪ .. 㭪樨   ᯨ᪮ 祭. 㬥    㣫 ᪮. 

᫨ 㪠⥫ 䠩 -  ᨢ   㦭   䨣 ᪮  ᫥ .


printf 䠩 ᯨ᮪ 

printf ᯨ᮪

祭 맮 "print 䠩 sprintf(ᯨ᮪)".

  ᯨ᪠   ଠ⮬ printf()    .


push ᨢ, ᯨ᮪

  ᨢ 祭ﬨ  ᯨ᪠.

 ᨢ 㢥稢  ⢮ ⮢ ᯨ᪠.


q/ப/

qq/ப/

qx/ப/

qw/ப/

  ப.   .


quotemeta ࠦ

 ࠦ  ஬ ᨬ ᬠਢ   ᨬ.


rand ࠦ

rand

頥 砩 ᫮    0  ࠦ.

᫨ ࠦ  -  0  1.  ᥢ砩 ᫥⥫쭮 뢠 㭪樥 srand().


read 䠩, ᪠, , ᬥ饭 

read 䠩, ᪠, 

 㪠 ᫮   䠩  ᪠ ६. 頥 ⢮ ⠭   ।  訡.  ᪠ ⠭ ࠢ  ⠭ . 饭 㪠뢠 ᫨  㦭    ᠬ 砫 ப.


readdir ४

頥  ᫥饣 䠩  ४ਨ ⮩  opendir().  ᪠୮ ⥪ 頥  ⠢訥  䠩. ᫨ 䠩    頥 ।  ᪠୮ ⥪   ப  ᯨ᪮.


readlink ࠦ

頥 祭 ᨬ᪮ 뫪.  訡 頥 । 祭.


recv SOCKIT, SCALAR, LEN, FLAGS

 ᮮ饭  ᮪. 祭 ⥬ recvfrom().


redo ⪠

redo

३  砫   ᫥ ᫮   continue. ᫨ ⪠   室  襬 譥 .


ref ࠦ

頥 true ᫨ ࠦ  뫪  - false.

頥 祭   ⨯ 뫪.  ᫥騥 ⨯ 뫮:

REF, SCALAR, ARRAY, HASH, CODE, GLOB

᫨ 㬥 - 뫪    頥  .

㭪 ref() 筠 㭪樨 typeof().


rename ஥_, __䠩

२ 䠩. 頥 1  砥 ᯥ  0.


require ࠦ

require

᫨ ࠦ - ᫮, ॡ   ⥪   뫠   㪠. ᫨ ப - 뢠  䠩  㪠  ᫨    ⠭.

᫥  筮 䠩   true.

筮  ப  1;

᫨ ७  䠩    㬮砭 ਭ <.pm>

  㭪樨  㪠뢠  ᯮ 䠩,  ᫨ ⥪ ᯮ  ⠭⭮ ⥬     require ।⥫쭥 ᯮ짮 use().


reset ࠦ

reset

筮 ᯮ   continue 横  ⪨ ६  ᪠  ୮ ਬ.

ࠦ ਭ  ᯨ᮪ ᨬ.  㪠   ਬ ᨬ  '-'.

 ६  ᨢ 稭騥   ᨬ . ᫨ ࠦ    

?蠡?  ୮ ᪠. 뢠 ⮫쪮 ६ ⥪饣 .

ਬ:

reset 'a';#   ६ 稭騥

# 㪢 'a'

reset 'a-z' #  ६   㪢.

ࠦ : 'A-Z' 㯮ॡ  ४ ..

  ᨢ @ARGV  @ENV.


return ᯨ᮪

室  ணࠬ  㪠 . ᫨  㭪   室  ணࠬ ⢫ 

 ᫥ 믮 . 


reverse ᯨ᮪

 ᯨ᪮ ⥪ 頥 ᯨ᮪  ⠬  ⭮ 浪 㪠 ᯨ.  ᪠୮ ⥪ 頥 ப ᯥ⠢묨 ᨬ ࢮ  ᯨ᪠.


rewindir ४

⠭ 㪠⥫ 䠩 ⮩ ४ਨ  砫  ᫥饣 ⥭ 㭪樥 readdir().


rindex ப, ப, 

rindex ப, ப

 㭪樨 index ,  頥  ᫥ 宦 ப  ப. ᫨ 㪠 ,  ᬮ 믮  .


rmdir ४

 㪠 ४ ᫨     䠩. 頥 1  ᯥ  0   㤠.  ⮬ ६ $! ᮤন  (errno).


s///

 ⠭.   <>.


scalar ࠦ

 ࠦ  ᪠୮ ⥪  頥 १.    ᯥ樠쭮 㭪樨  ਭ㤨⥫쭮

᫥  ᯨ᪮ ⥪ ..  筮    㣫 ᪮.


seek 䠩, , 

⠭ 㪠⥫  ந   䠩.

᫨  ࠢ 0 - 樮஢  砫 䠩, ᫨1 -  ⥪饣 , 2 -   䠩. 頥 1  ᯥ  0 - 㤠.


seekdir ४, 

⠭ 㪠⥫ 䠩  ⮩ ४ਨ  ᫥饣 ⥭ 㭪樥 readdir().  

  祭 㭪樥 telldir().


select 䠩

select

頥 ⥪騩 㪠⥫ 䠩-  㬮砭   ⥪騬 㪠.  ࠧ ᫨  㭪 print  write  㪠 䠩 뢮   ⢫  䠩 㪠 select. ६ 易  뢮 ⠪    뢮   䠩.


select RBITS, WBITS, EBITS, TIMEOUT

믮 ⥬ select()


semctl ID, SEMNUM, CMD, ARG

⥬ 맮 semctl()  SYSTEM V.


semget KEY, NSEMS, FLAGS

⥬ 맮 semget()  SYSTEM V.


semop KEY, OPSTRING

⥬ 맮 semop()  SYSTEM V.


send SOCKET, MSG, FLAGS, TO

send SOCKET, MSG, FLAGS

᫠ ᮮ饭 १ ᮪. 筮 ⥬ send().


setpgrp PID, PGRP

⠭  㯯 PGRP   ஬ PID

0 =  ⥪饣 .


setpriority WHICH, WHO, PRIORITY

⠭ ਮ PRIORITY  짮⥫ WHO  㯯 WHICH.


setsockopt SOCKET, LEVEL, OPTNAME, OPTVAL

⠭ ࠬ ᮪. 頥 ।  訡.


shift ᨢ

shift

   ᨢ  頥  祭.

᫨ ᨢ ⮩  १ ।. ᫨ 㬥 饭 - ࠡ뢠 ᨢ @ARGV   ணࠬ  @_  ணࠬ.


shmctl ID, CMD, ARG

⥬ 맮 shmctl() System V


shmget KEY, SIZE, FLAGS

⥬ 맮 shmget() System V


shmread ID, VAR, POS, SIZE

shmread ID, STRING, POS, SIZE

  ⠥ ᥣ 饤㯭   System V.


shutdown SOCKET, HOW

४頥 ࠡ ᮪ ⮤ HOW.


sin ࠦ

頥  ࠤ ᨭ ࠦ.


sleep ࠦ

sleep

ਮ⠭ ࠡ   㪠 ᫮ ᥪ㭤  横 ᫨ 㬥 .  த ᫨ 祭 ᨣ SIGALARM. 頥 ६ 䠪᪮ .


socket SOCKET, DOMAIN, TYPE, PROTOCOL

뢠 ᮪  ਢ뢠   㪠⥫ SOCKET.


socketpair SOCKET1, SOCKET2, DOMAIN, TYPE, PROTOCOL

 <ﭭ>  ᮪⮢  㪠 DOMAIN. 頥 true  ᯥ  false - 㤠.


sort ணࠬ ᯨ᮪

sort  ᯨ᮪

sort ᯨ᮪

ᯨ᪠頥 祭 ᯨ᮪. 騥  ᯨ᪠ 뢠. ᫨  㪠ணࠬ     ⠭⭮ ப 浪.

ணࠬ 頥 祭 ,   ࠢᨬᥤ⮢ ᯨ᪠. ணࠬ   㪠 ६.     ४ᨢࠢᯨ᪠ । ६ $main::a  $main::b.  뫪⮬ਢᠬ ⮢ ᯨ᪠.


splice ᨢ, ᬥ饭, , ᯨ᮪

splice ᨢ, ᬥ饭, 

splice ᨢ, ᬥ饭

  ᨢ 稭  ᬥ饭  㪠 .

  㪠 ᯨ᪮. 頥 㤠 ᯨ᮪.

᫨   㪠 㤠   ᯨ᪠ 稭  ᬥ饭.


split /蠡/, ࠦ, ।

split /蠡/, ࠦ

split /蠡/

split

 ப,㪠 ࠦ,  ᨢ ⮢  頥 .

 ᪠୮ ⥪ 頥 ⢮ 祭 ⮢ ᨢ,  ᠬ ᨢ 頥  @_ ( ᯨ᪮ ⥪  १  @_  ᫨ ਬ ?蠡?)

᫨ ࠦ   ࠡ뢠 ᮤন ६ $_.

᫨ 蠡   ࠧ⥫  ஡.

  室  蠡 ⠥ ࠧ⥫. ᫨ 㪠 ।   ᨬ쭮 ᫮ ࠧ. ⥫쭮 祭 । ਭ  ࠭祭 让 ।.

᫨  ப 室  蠡 ࠧ⥫  室 祭 ࠧ  ᨬ쭮.

। 㤮 ᯮ짮  筮 ࠧ ப.

ਬ:

($a, $b, $⮪) = split(/ /, <   >,3);

 $a = '', $b = ''  $⮪ = ' '


᫨ 蠡 ᮤন 㣫 ᪮  ᨬ-ࠧ⥫ 㪠   ⠢  १騩 ᯨ᮪   , 祬 ⠢ ᨬ  ᮢ  ࠧ⥫.

ਬ:

@a = split(/([,.])/, <,.>);

 @a = (<>, "," ,"", ".", <>)


sprintf ଠ, ᯨ᮪

ଠ ᯨ᮪  㪠 ଠ 筮 㭪樨 sprintf() 몠 .


sqrt ࠦ

頥 ७  ࠦ.


srand ࠦ

 砫쭮 祭   砩 ᥫ  rand. ᫨ 㬥   ᯮ ⥪饥 設 ६.


stat 䠩

stat ࠦ

頥 13  ᨢ ࠬ஢ 㪠 䠩  ⮩ ᯨ᮪  訡. ਬ 筮 ᫥騬 ࠧ:

($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,$atime,$mtime,$ctime, $blksize,$blocks) = stat($filename);



$dev-  ன⢠

$ino-  i-㧫

$mode- ࠢ 㯠

$nlink- ⢮ 痢

$uid- 䨪 

$gid- 䨪 㯯

$rdev- ⨯ ன⢠

$size- ࠧ 䠩  

$atime-  ᫥ 饭

$mtime-  ᫥ 䨪樨

$ctime-  ᫥  

$blksize - ࠧ   ᪥

$blocks - ⢮   䠩.

᫨ 㪠 㬥 '_'  頥 १ ।饣

맮 stat().


study ᪠

study

祭 ⮤ ⭮ ࠢ. ᮮࠧ ਬ   ⢠ ᪮  ⢠ ⠭  ப  ன  .

㭪 ࠡ⠥ ᫥騬 ࠧ:

 㪠 ᪠ (᫨ 㬥   祭 ६ $_) ந ᯨ᮪ 㪠⥫   ᨬ ப.

⥬  稭  묨 ᬠਢ ᨬ   ।   ᪮ 몥.

먣  ६ 祢  믮      ⮩  ப  ६ 祭   㯠.


substr ࠦ, ᬥ饭, 

substr ࠦ, ᬥ饭

頥 ப ࠦ 稭  ᬥ饭   . ᫨ ᬥ饭 ⥫쭮      ப.

᫨   㪠      ப.


symlink _䠩, _䠩

  䠩 ᨬ᪨ 易   .. ᮧ 뫪  䠩. 頥 1  ᯥ  0 - 㤠.


syscall ᯨ᮪

믮 ⥬ 㭪.   ᯨ᪠ -   㭪樨  ⠫  -  㬥.

᫨ 㭪  믮  頥 ⠫쭠 訡.

㬥  ᫥騬 ࠧ.

᫨ 㬥 ᫮,   ⠥ 楫. ᫨  ᫮  㬥 ⠥ 㪠⥫  ப.  室 ᯥ   㬥  ⠭ 祭 㪠⥫.   । ᨬ 14 ࠬ஢. 筮 ⮣ 筮.


sysread 䠩, ᪠, , ᬥ饭

sysread 䠩, ᪠, 

  䠩 㪠 ᫮   ᪠   ⥬ 맮 read(). 饭 砥   ᪠ ᫥ ன  ⠢ ⠭ .


system ᯨ᮪

   ᠬ   <exec ᯨ᮪>  ⮩  ࠧ楩  맮 fork()    த⥫᪨   襭 ⮬. 頥 祭 筮 㭪樨 wait().

 祭 ⢨⥫쭮  襭 室 ࠧ  256.


syswrite 䠩, ᪠, , ᬥ饭

syswrite 䠩, ᪠, 

  䠩 㪧 ᫮  ᪠   ⥬ 맮 write(). 饭 㪠뢠   ᪠

㤠 稭 .


tell 䠩

tell

頥 ⥪  㪠⥫  ⮬ 䠩. ᫨ 䠩  㪠  ᫥ ⠥ 䠩.


telldir ४

頥 ⥪  㪠⥫  ⮩ ४ਨ.

筮  ࠬ  樮஢ 㪠⥫ ४ਨ 㭪樥 seekdir().


tie ६, , ᯨ᮪

ᢠ ६ . ᮪ -  㬥 new ⮤  (TIESCALAR, TIEARRAY  TIEHASH).

頥 㪠⥫  ᮧ  ꥪ   㤮  맮 㣨 ⮤ .

!  㭪樨  keys()  values()     祭 ஬ ⢮ .

 ᮧ ꥪ 樠⨢ ⨯ 室 । ᫥ ⮤:

TIEHASH classname, LIST

DESTROY this

FETCH this, key

STORE this, key, value

DELETE this, key

EXISTS this, key

FIRSTKEY this

NEXTKEY this, lastkey

筮 ᨢ:

TIEHASH classname, LIST

DESTROY this

FETCH this, key

STORE this, key, value

[others TBD]

୮ ⨯:

TIEHASH classname, LIST

DESTROY this

FETCH this, key

STORE this, key, value 


time

頥 ⢮ ᥪ㭤 稭  1 ﭢ 1970  00:00:00 UTC.   ࠧ  ᮪.


times

頥 4-  ᨢ 祭:

($user, $system, $cuser, $csystem) = times;

:

$user-짮⥫᪮ ६   ᥪ㭤.

$system - ⥬ ६ ⥪饣 .

$cuser- ६ -⮬ ⥪饣 .

$csystem -  ⥬ ६.


tr///

 ࠭. ஡ ᬮ  <>.


truncate 䠩, 

truncate ࠦ, 

ᥪ  㪠 䠩.


uc 饭

頥 ப ࠦ  ன  㪢   .


ucfirst ࠦ

頥 ப ࠦ  ன ࢠ 㪢   .


umask ࠦ

umask

⠭  umask  頥 ஥ 祭.

 㬥 頥 ⥪饥 祭.


undef ࠦ

undef

 । 祭 ࠦ. ਬ ⮫쪮  ᪠ ६, 楫 ᨢ  ணࠬ. ᥣ 頥 । 祭.


unlink ᯨ᮪

 䠩 㪠  ᯨ᪥. 頥 ⢮ 㤠 䠩. 쪮 㯥ࢨ  㤠 ४ਨ  䠩 ᫨  饭  箬 -U.


unpack 蠡, ࠦ

㭪 ⭠ pack(). ᯠ뢠 ப ࠦ  㪠 蠡  ᨢ 祭.  ᪠୮ ⥪ 頥 祭 ⮫쪮 ࢮ .  ⠪     pack().

 '%'  蠡 砥      祭  ஫ 㬬.  㬮砭 16 ⮢.


untie ६

᪫砥 ६   㪠 tie().


unshift ᨢ, ᯨ᮪

⨢ shift. 頥  ᯨ᪠  砫 ᨢ.


use  ᯨ᮪

use 

뢠    ண  뢠 ணࠬ. ᮪   ணࠬ    ⥪饩  . ᫨  㪠   .

⢨ 筮 :

BEGIN { require ; import  ᯨ᮪; }

   ᯮ  ⥬   䠩. 


utime ᯨ᮪

  饭  䨪樨 䠩  ᯨ᪠.

   ᯨ᪠  㪠뢠  祭  饭  䨪樨.

頥 ⢮  䠩.


values 

頥  ᨢ  ᥬ 祭ﬨ .

 ᪠୮ ⥪ 頥 ⢮ 祭 .


vec ࠦ, ᬥ饭, 

頥 祭 ப     楫.


wait

 砭 ஦ . 頥 PID  த⥫᪮   -1 ᫨   ⮬.

 襭 뢠  ६ $?.


waitpid PID, FLAGS

 砭  ⮬  㪠 PID.

頥  PID ⮣   -1 ᫨  ⠪ .  襭 뢠  ଥ $?.


wantarray

頥 true ᫨ ணࠬ 뢠  ᯨ᪮ ⥪  false -  ᪠୮.


warn ᯨ᮪

뮤  ⠭ ⮪ 訡 STDERR ᮮ饭 筮 die(),   ४頥 ࠡ ணࠬ.


write 䠩

write ࠦ

write

뢮  䠩 ଠ஢    format.  㬮砭  ଠ ᮢ   㪠⥫ 䠩.  䠩- 㬮砭   㭪樥 select(),   ଠ  ⮬  ᢮ ६ $~.    ⮬᪨. ᫨    墠⠥   뢮  뢮 <ॢ ଠ>  ᯥ樠쭠 ଠ   ⥬ ᠬ .  㬮砭  ଠ   ⮨   㪠⥫ 䠩   ப <_TOP>. ᪨    ᢠ ଠ ६ $^. ⢮ ⠢ ப  ᮤন  ६ $-  ᫨ ᢮  0  ந ᬥ . ஡ ᠭ ଠ⮢ ᬮ   <ଠ>.


y///

 ࠭.   <>.




ணࠬ



 ਬ ணࠬ  室 ।   ⥪饬 㫥 (䠩)   譥 㫥 (䠩).

ணࠬ ।   ᫥騬 ࠧ:

sub;# 쪮 . । .

sub  (⨯);    樥 ࠬ஢.

sub  ;#   ।.

sub  (⨯) ; #  ,   ࠬࠬ.

 । ᪮  ணࠬ  㪠:

$६ = sub ;

 ஢ ணࠬ  㣨 㫥 ᯮ:

use  qw(ணࠬ1 ணࠬ2 );

맮 ணࠬ:

(ᯨ᮪ ࠬ஢); # ᨬ '&'   㪠뢠.

 ᯨ᮪; # ᫨ ணବ 㦥 ஢.

&;# ࠬ  @_

 ࠬ । ணࠬ  ᨢ @_.

⢥ᢥ $_[0] -  ࠬ, $_[1] - ன  ..

ᨢ @_ - ,   ᮤন  ࠬ஢ ⮬   祭 ࠬ஢.

頥 祭 ணࠬ - १ ᫥ .

    ᪠ ⠪  ᨢ.  ਭ㤨⥫쭮  १ ᯮ 㭪 return().

ணࠬ  맢 ᯮ 䨪 '&' ।  ணࠬ. ᫨ ணࠬ ।⥫쭮 த஢  䨪  ᪮  .


Private ६.

 ਬ ६ 㯭 ⮫쪮    ணࠬ 室 ।    㭪樨 my(ᯨ᮪).

᫨ ६   ᪮  .

my()  private ६  । ⥪饩 ணࠬ, , 㭪樨 eval()  do/require/use 䠩. Private ६  auto ६  .

ਬ:

# ணࠬ ᫥ 䠪ਠ.

print fact(3);# ᫨ 䠪ਠ 3*2*1

sub fact# ।塞 ணࠬ.

{ my $m;# private ६   local !

$m = $_[0];

return 1 if $m <= 1;

return($m * fact($m -1));

}

 㪠뢠 砫 祭 private ६ :

my(ᯨ᮪) = ࠦ;

  襯ਢ ਬ  뫮 :

my($m) = $_[0];


६ ⨯ local.

 饬  ᯮ짮 private ६ ⠪-    ॥. private ६ ᯥ稢   ਬ ()  local - . 筮  ६ ଠ⮢ 祭      뢠 ணࠬ.

ਬ 㭪樨 local()  楫ᮮࠧ  横 ⠪   뢠  ࠧ  ⠪ ࠧ ⭮  ६ 믮 横.


⨯ (prototypes).

 ⪮ ᠭ ⨯ ࠬ஢ । ணࠬ  ਬ ⨯.    ᫥騥 ⨯:

ਬ 맮

sub mylink($$)mylink $old, $new

sub myvec($$$)myvec $var, $offset, 1

sub myindex($$;$)myindex &getstring, <substr>

sub myreverse(@)myreverse $a, $b, $c

sub myjoin($@)myjoin ":",$a,$b,$c

sub mypop(\@)mypop @array

sub mysplice(\@$$@) mysplice @array, @array, 0, @pushme

sub mykeys(\%)mykeys %{$hashref}

sub myopen(*;$)myopen HANDLE, $name

sub mypipe(**)mypipe READHANDLE, WRITEHANDLE

sub mygrep(&@)mygrep { /foo/ } $a, $b, $c

sub myrand($)myrand 42

sub mytime()mytime

:

\'ᨬ'- ࠬ  ⨯ 'ᨬ'

'@'  '%' -  ⠢訥 ࠬ  ᯨ᮪

'$'- ᪠

'&'- ﭭ ணࠬ

'*'- 뫪  ⠡ 

';'- ࠧ࠭⥫ 易⥫   易⥫ ࠬ஢.


뫪  ࠬ.

 㦭  ⢥ ࠬ । ணࠬ  祭  ᨢ  뫪  ,   ணࠬ   祭 .  ⮣     ६  ᨬ '*'  ࠦ 뢠 'type glob' ⠪    ᨬ '*'  <  祭>. ⮬ '*'  ᨢ 砥 <  ᨢ>.

 ᪠஢ 㯮 '*'   ᫠ ..   ⠪ । 뫪     祭 ࠬ  ਬ ६ $_[0].


८। ஥ 㭪権.

設⢮ ஥ 㭪権   ८। ᢮ ᮡ⢥묨. 筮    㤮⢠ ᮢ⨬   ࠧ  ⥬.

 ⮣ 㦭 ᫨   㭪権  :

use subs '㭪1', '㭪2' ....;

   㫥 । ᠬ 㭪樨.


⮧㧪.

᫨  ⠥ 맢   㭪   뤠  ᮮ饭  訡.  ᫨  । ணࠬ   'AUTOLOAD'   㤥 맢  ⥬  ࠬࠬ  ६ $AUTOLOAD 㤥 ᮤঠ   饩 ணࠬ.  堭 祭 㤮  । ⫠.




㫨 (packages)


ॠ堭㫥. 㯯 ணࠬ  ६ 筮 祭   䠩. ।㣮 . 砫  । ४⨢:

packages _;

   䠩.    㬮砭main. 뫠  '::' ᫥  .

ਬ:

$main::var1 - ६   㫥.

::var1-   ᠬ.  main  ᪠.

$1::var1- ६  㫥 '1'

$1::2::var1 - 2 ᮤন  㫥 1.

쪮 䨪 稭騥  㪢  ᨬ '_' ࠭  ࠭ᢥ  ⥪饣 . ⠫ ࠭  ࠭⢥   main.

஬ ⮣  STDIN, STDOUT, STDERR, ARGV, ARGVOUT, ENV, INC  SIG ⠪  ࠭   㫥.


 .

   ࠭  樠⨢ ᨢ ()     ஬  ᨬ "::".  ࠧ    ࠭  %main:: ,  'mod1'  %mod1::  .. ࠦ  * 㪠뢠 祭   ''  㤮  । ⠭.

ਬ:

*pi = \3.14159;

 ६ $pi -  ⠭   㦥  .


  .

 -  ணࠬ  믮   ᮧ ꥪ,   - 㤠 ꥪ.    ணࠬ   BEGIN  END.  ।  ணࠬ ᫮ sub  ᪠.

 BEGIN 믮 ࠧ  ⮫쪮  ..  ⮫쪮  ।    쭥訩 ࠧ ணࠬ.  㪠 ᪮쪮  BEGIN.   믮   㣨  浪 ।.

 END 믮 ᫥  ⮫쪮  ..  襭 ࠡ .  㪠 ᮫쪮  END  ⮬   믮  ⭮ । 浪.


.

   ᯥ樠쭮 ᨭ⠪  ᮢ.  㭪樮쭮 業묨 ᠬ   㫨.  ⮬ ணࠬ  ⠭ ⮤,    ᨢ @ISA  ॠ 堭 ᫥  .  ஡  ᠭ ⤥쭮.


 ⥪.

᫨  ⮨ ᮧ  ⤥ 䠩  ᯮ짮  ⥪ ணࠬ,  ⮬ 뢠 ணࠬ ⥪  㪠뢠  ,  室 ନ  ᫥騬 ࠧ:

package _; #      ⮣ 䠩  ७ '.pm'

require Exporter;# 易⥫쭠 ப  ᯮ 

@ISA = qw(Exporter);# -//-

@EXPORT = qw(func1 func2) # 塞  㭪権.  !  ⮩!

@EXPORT_OK = qw( $६ @ᨢ ); #  㡫 ६, ᨢ  .. ᫨ 室

{# 砫  

.....

sub func1

........

sub func2

........

1;

}

 䠩  ७ ".pm"  ࠭     ४਩ .  ᫥  ᨢ @INC    筮 "/usr/local/lib/perl/".

  ணࠬ  㪠뢠:

use _;

  ⠭ 㯭  ணࠬ  .


⠭  ⥪.

⠭  ⥪ 筮 ⠢  ਡ⨢   ࠧ  pragma ⥪ (ࠡ  ४⨢ )  ⠭ ⥪.


Pragma ⥪.

 ⥪ ᯮ :

use ;

   ⢨ 

no ;

 몫.

 ⠭  室 ᫥騥 pragma:

diagnostics - ० ७ ⨪.

integer -ᯮ짮 楫᫥ 䬥⨪.

less - 쭮 㧪 .

overload - ८। ஢.

sigtrap - ᫥  뢠ﬨ.

strict - ࠭祭 ᯮ짮 <> ஢.

subs - 易⥫쭮 ஢ ணࠬ.


⠭ ⥪.


AnyDBM_File ࠡ  ࠧ묨 ⨯  .

AutoLoader㧪   㭪権 ⮫쪮  ६ 맮.

AutoSplit   ⮧㧪.

Benchmark ᪮ ᯮ ணࠬ.

Carp।०  訡.

Config  䨣樨 .

Cwd  ⥪饩 ࠡ祩 ४ਨ.

DB_File    ଠ Berkley DB.

Devel::SelfStubber ⫠ ⮧㧪.

DynaLoader᪠ 㧪 ⥪ C.

Englishᯮ짮   ஥ ६.

Env஢  ६ 㦥

Exporterᯥ稢 ᯮ/  㫥.

ExtUtils::LibList। ᯮ㥬 ⥪.

ExtUtils::MakeMaker 䠩 ஥ Makefile

ExtUtils::Manifestணࠬ  ᮧ  ஢ન 䠩 MANIFEST

ExtUtils::Mkbootstrapਬ 䠩 砫쭮 㧪  DynaLoader.

Fcntl।     Fcntl.h

File::Basename⠪᪨ ࠧ ᯥ䨪樨 䠩.

File::CheckTree 室  ४ ᪠.

File::Find  䠩  ४.

FileHandleᯥ稢 ꥪ ⮤ 㯠  㪠⥫ 䠩.

File::Path/㤠 ४਩.

Getopt::Long७ ࠡ⪠ 権.

Getopt::Std⠭⭠ ࠡ⪠ 権.

I18N::Collateࠢ ᨬ 쭮 ஢.

IPC::Open2   ⥭  .

IPC::Open3   ⥭, ,  ࠡ 訡.

Net::Ping 㯠  .

POSIX⠭ 䥩  IEEE Std 1003.1

SelfLoader㧪 㭪権 ⮫쪮  맮.

Socket।   ⠭     socket.h

Test::Harness⠭   ⨪.

Text::Abbrev ⠡ ᮪饭  ᯨ.

஡ ᠭ  ⥪ ᠭ  ᠬ 䠩.


CPAN

ணࠬᥣࠡ騥ᮧ 饤㯭⥪㫥CPAN.㯭१ ୥  ᮤন ஬ ⢮ ࠧ  祭 㫥.

⭮㬥,⥬, 䥩 ࠡ   , ࠡ ,䠩, ୥-㧥,⥬᪠,஬⢮CGI ਯ⮢ Webࢥ஢㣮.᮪  CPAN ࢥ஢     ਫ.




ଠ


ॠ㤮 ⮤ ᮧ ଠ஢ ⮢.   format 뢠, ࠧ,㪠뢠      㤮 ⥪⮢ ଥ. ⥬ 믮 write(䠩) 뢮 ଠ஢   㪠 䠩. 

 ଠ  ᫥騩 ᨭ⠪:

format  =

FORMLIST

.

     ᠭ ଠ  ᫥ ப format  稢 ᨬ '.'  砫 ப.

 '' -   ଠ, ⠪     㪠⥫ 室 䠩.

᫨ ''   祭  㬮砭 - STDOUT.

FORMLIST -  ப ଠ.  뢠  ⨯:

1. ਩. ப 稭 ᨬ '#'.

2. ⥫   (picture).

3. ப 㬥⮢ ᯮ㥬 ⥫.

⥫ -  ப  뢮   < >  ᪫祭 ᯥ樠쭮 祭 ଠ⮢  .   稭  ᨬ '@'  '^'.

 ⥫쭮 ப 㪠뢠 ⮫쪮    뢮 ,      ६.

 ⮣ ।祭 ᫥ ப 㬥⮢  ᫥ ᥣ ᫥ ⥫  ᮤন  ६  楫 ࠦ  浪 㪠 ⥫.

     ⥫ 砥 ᫥騬 ᨬ:

<>>>>>- ஢ 祭  ࠢ .

<<<<<>- -//-  .

<||||>- -//-  業.

<####.###>- ଠ ᫠  窮.

<@*>- 筠 ப.  뢮  .

  ࠢ  㪠 ᨬ.

 '^'  砫   ᯥ樠쭮 祭.

:

<^####> -  ᫨ ६  ।.

 筮 ᪠:

<^<<<<<> - 뢮 ᪮쪮  ᨬ,  祭 ६   ⮪ 뢮 ண  த  ᫥ ப    ᢮ .

ਬ:

#!/usr/local/bin/perl

#

#ணࠬ  ਣ⥫쭮 

#

$ = < ᨫ >;

$_ = < >;

$ = <᪢, . ஢,  38>;

$⥪ = " ᨫ !     ਣ

     १   ஬ ᠯ, ᤥ

 ஢ ஢ ⠭⮢ ⢠  .";

format STDOUT =

                  

: @<<<<<<<<<<<<<<<<<<<<<<<<<<| ^|||||||||||||||||||||||||||||||

$,$⥪

| ^|||||||||||||||||||||||||||||||

$⥪

 : @<<<<<<<<<<<<<<<<<<<<<<<| ^|||||||||||||||||||||||||||||||

$_,$⥪

| ^|||||||||||||||||||||||||||||||

$⥪

:@<<<<<<<<<<<<<<<<<<<<<<<<<<| ^|||||||||||||||||||||||||||||||

$,$⥪

| ^|||||||||||||||||||||||||||||||

$⥪

| ^|||||||||||||||||||||||||||||||

$⥪

| ^|||||||||||||||||||||||||||||||

$⥪

⯥⠭  ⨯䨨  38

.

write();# 뢮 .

exit 0;#  ணࠬ


:


                  

:  ᨫ | ᨫ !

|   

 :  |ਣ    

| १  

:᪢, . ஢,  38|஬ ᠯ, ᤥ 

|஢ ஢ ⠭⮢

|⢠  .

|

⯥⠭  ⨯䨨  38

樠 ६:

$~-  ଠ ᮤন.

$^- ଠ  .

$%-  .

$=- ப  .

᫨   ᯮ짮     ଠ  ࠧ 䠩  ᠬ ⮩ :

use FileHandle; #   砫 ணࠬ

format_name 䠩 _ଠ; # ଠ ᮤন .

format_top_name 䠩 _ଠ; # ଠ  .

write(䠩);# 뢮 .


 '䠩'   㪠⥫ 䠩 祭  open();

᫨  㦭  ⥫  뢮 ࠧ த ଠ (ਬ  㯯  ⡨ )  ਬ format_name.




⫠  ணࠬ


  ॠ ॢ室 堭 ⫠ ணࠬ.  筮  ணࠬ  箬 '-d'   筥 ࠡ  ࠪ⨢ ⫠稪.  ⠭ 㯭  ६  ᨢ,    ࠦ  , ஢, ᫥ ࠡ ணࠬ  -蠣 ०   㣮.

 ᫥  ⫠稪       ᪠.


 ⫠稪. 

h-  ࠢ  .

T- ᬮ ⥪ ணࠬ

s- 믮    ⠭.

n- 믮 ணࠬ  ⠭.

r- 믮 ⥪ ணࠬ  ⠭.

c- த 믮  ᤥ饩 窨 ⠭.

c  - த 믮  ப   ஬.

<CR>-  ᫥  n  s.

l min+incr- 뢥 incr+1 ப ணࠬ 稭  ப min.

l min-max- 뢥 ப 稭  min  max.

l  - 뢥 ப  㪠 ஬.

l- 뢥 ᫥騩 ࠭ ப.

-- 뢥 ।騩 ࠭ ப.

w ப - 뢥 ࠭ ப.   ।.

l ணࠬ- 뢥 ப 㪠 ணࠬ.

/蠡/-  ப  ⥪ ணࠬ.

?蠡?-   ப  ⥪ ணࠬ.

L- 뢥 ப  窠 ⠭  ⨢.

S- 뢥   ணࠬ.

t-   몫 ஢.

b ப [ ᫮] - ⠭  ⠭.

b ணࠬ [ ᫮ ] - ⠭  ⠭  砫 㪠 ணࠬ  ᫨ 㪠   ᫮.

d-   ⠭.

D-   窨 ⠭.

a ப  - ⠭ ⨢ (  믮   㪠 ப. <> -   .

A-   ⨢.

< - 믮  ।  ⠭.

> - 믮  ᫥ ⠭ ⫠稪.

V  [] - 뢥 祭   㪠   㫥. !  '$'  .

X []-     V ,  ⮫쪮  ⥪饣 .

!  - 믮  ப ணࠬ.

! -- 믮    ஬ ।騬⥪饩 ப.

H - n- 뢥 n ᫥ 믮 .

q  ^D- 室  ணࠬ.

- 믮  .

p ࠦ - 뢥 祭 ࠦ.

 BEGIN  ᫥ ⫠稪,    ⥫  㪠:

$DB::single =1;

 ⫠稪 ⠭.    맮 訡  ࠡ  ⫠稪.




᮪ 


 ᠭ    ᭮ 짮 ᠭ

 <Perl Programmers Reference Guide>.

 ⭠ 㡥 :

Programming Perl (the Camel Book)

Learning Perl (Llama Book)




୥ - 뫪


祭  USENET ७樨:

comp.lang.perl.announce -    ᮮ饭.

comp.lang.perl.misc -   ᮢ  㦤.

comp.lang.perl.modules - 㫨 .

comp.lang.perl.tk -   Tcl/tk.


WWW ࢥ:

http://www.perl.org- 樠 -ࢥ

http://www.ora.com-    ⥫⢠ O`Reily

ftp://ftp.perl.com- 樠஢ FTP ࢥ

http://franz.ww.tu-berlin.de/modulelist- 㫨 .




          See more books in http://www.e-reading.club
