PERL

PERL يکی از متداولترين زبانهای اسکريپت است که از آن در موارد متعددی استفاده می گردد. مثلا" می توان از زبان فوق برای نوشتن فايل های مشابه Batch در سيستم عامل DOS و يا اسکريپت های C shell استفاده نمود . از زبان Perl به منظور پياده سازی اسکريپت های CGI نيز استفاده می گردد. استفاده از Perl ساده بوده و علاقه مندان می توانند به سرعت اقدام به يادگيری و استفاده از زبان فوق نمايند. به منظور استفاده از زبان Perl می بايست از " مفسر Perl" استفاده گردد .
پنجشنبه، 21 شهريور 1387
تخمین زمان مطالعه:
موارد بیشتر برای شما
PERL
PERL
PERL

PERL يکی از متداولترين زبانهای اسکريپت است که از آن در موارد متعددی استفاده می گردد. مثلا" می توان از زبان فوق برای نوشتن فايل های مشابه Batch در سيستم عامل DOS و يا اسکريپت های C shell استفاده نمود . از زبان Perl به منظور پياده سازی اسکريپت های CGI نيز استفاده می گردد. استفاده از Perl ساده بوده و علاقه مندان می توانند به سرعت اقدام به يادگيری و استفاده از زبان فوق نمايند. به منظور استفاده از زبان Perl می بايست از " مفسر Perl" استفاده گردد . در اغلب ماشين هائی که دارای سيستم عامل يونيکس می باشند ، مفسر فوق به صورت پيش فرض وجود خواهد داشت . ماشين هائی که دارای سيستم عامل ويندوز و يا مکينتاش می باشند ، می بايست آخرين نسخه مفسر Perl را بر روی آنان نصب نمود . پس از نصب مفسر Perl، فولدری با نام DICS ايجاد می گردد. فولدر فوق شامل مستندات لازم در رابطه با نحوه استفاده از زبان Perl است .

اولين برنامه

با استفاده از يک اديتور متنی ، فايلی را با نام test1.pl ايجاد و دستور زير را در آن قرار دهيد :
print "Hello World!\n";
به منظور اجرای برنامه فوق دستور per1 test1.pl ، را تايپ و در ادامه عبارت "Hello world" در خروجی نمايش داده خواهد شد. دستور Print امکان نوشتن اطلاعات مورد نظر در stdout را فراهم می نمايد. n\ برای ايجاد يک خط استفاده می گردد.

متغيرها

برای استفاده از متغيرها ، ضرورتی به تعريف آنان نبوده و با استفاده از علامت "$" می توان آنان را مشخص کرد.

متغيرها در Perl

$s  = "Hello\nWorld\n";
$t   = 'Hello\nWorld\n';
 print $s, "\n", $t;

$i = 5;
$j = $i + 5;
print $i, "\t", $i + 1, "\t",  $j;     # \t = tab
 

$a = "Hello ";
$b = "World\n";
$c = $a . $b;    # note use of . to concat strings
print $c;

$a = "Hello ";
$b = "World\n";
$a .= $b;
print $a;

برنامه زير نحوه تعريف و استفاده از بردار را نشان می دهد.

استفاده از بردار

@a = ('cat', 'dog', 'eel');
print @a, "\n";
print $#a, "\n";  # The value of the highest index, zero based
print $a[0], "\n";
print $a[0], $a[1], $a[2], "\n";

از کاراکتر #$ ، به منظور برگرداندن بالاترين ايندکس بردار استفاده می گردد.

ساختارهای تکرار و شرطی

برای ايجاد حلقه های تکرار از for و while استفاده می گردد.

 

حلقه for

for ($i = 0; $i < 10; $i++)
{
print $i, "\n";
}

حلقه While

 $i = 0;
   while ( $i < 10 )
   {
      print $i, "\n";
      $i++;
   }

برنامه زير نحوه استفاده از ساختار if را نشان می دهد.

ساختار if

for ($i = 0; $i < 10; $i++)
   {
      if ($i != 5)
      {
         print $i, "\n";
      }
   }

عملگرهای منطقی در Perl مشابه زبان C می باشند.

عملگرهای منطقی

  • && and
  • || or
  • ! not

 

  • For numbers:
    • == equal
    • != not equal
    • <, <=, >, >= (as expected)

 

  • Others:
    • eq
    • ne
    • lt
    • le
    • gt
    • ge

توابع

با استفاده از sub می توان يک برنامه فرعی را ايجاد کرد. تمام پارامترهائی که به برنامه فرعی ارسال می گردند ، در برداری با نام "_" ذخيره می گردند.

توابع

show ('cat', 'dog', 'eel');

   sub show
   {
      for ($i = 0; $i <= $#_; $i++)
      {
         print $_[$i], "\n";
      }
   }

برای تعريف متغيرهای محلی در يک تابع از کلمه local استفاده می گردد.

تعريف متغيرهای محلی در توابع

sub aaa
   {
      local ($a, $b, $c)
      ...
   }

برای فراخوانی يک تابع از & بصورت زير استفاده می گردد.

فراخوانی  تابع

 &show ('a', 'b', 'c');

برای برگرداندن مقدار از يک تابع از Return استفاده می گردد.

خواندن اطلاعات از STDIN

به منظور خواندن اطلاعات از فايل استاندارد ورودی (stdin) از STDIN به صورت زير استفاده می گردد.

خواندن اطلاعات از STDIN

print "Enter high number: ";
   $i = <STDIN>;
   for ($j = 0; $j <= $i; $j++)
   {
      print $j, "\n";
   }

STDIN در هر لحظه يک خط را می خواند . با استفاده از getc می توان يک کاراکتر را از ورودی خواند.

خواندن يک کاراکتر از ورودی

$i = getc(STDIN);

 

خواندن متغيرهای محيطی

در زبان PERL يک hash سراسری با نام ENV تعريف و از آن برای بازيابی مقادير مربوط به متغيرهای محيطی استفاده می شود.

خواندن متغيرهای محيطی

print $ENV{'PATH'};

 

خواندن آرگومانهای خط دستور

در زبان PERL از يک بردار سراسری با نام ARGV بمنظور بازيابی آرگومانهای پاس داده شده به اسکريپت استفاده می گردد. ARGV#$ تعداد آرگومانها ( می بايست يک واحد از آن کم گردد ) ، [0]ARGV$ اولين آرگومان و [1]ARGV$ دومين آرگومان ( ساير آرگومانها نيز با تغيير ايندکس بردار بدست خواهند آمد ) را نشان می دهد.


نظرات کاربران
ارسال نظر
با تشکر، نظر شما پس از بررسی و تایید در سایت قرار خواهد گرفت.
متاسفانه در برقراری ارتباط خطایی رخ داده. لطفاً دوباره تلاش کنید.
مقالات مرتبط
موارد بیشتر برای شما
حملات پهپادی ارتش به سمت پایگاه‌ آمریکا در اردن
play_arrow
حملات پهپادی ارتش به سمت پایگاه‌ آمریکا در اردن
رهبر شهید انقلاب چه نظری در مورد افزایش توان موشکی داشتند؟
play_arrow
رهبر شهید انقلاب چه نظری در مورد افزایش توان موشکی داشتند؟
نماهنگ/ خیلی دعا کردم براتون...
play_arrow
نماهنگ/ خیلی دعا کردم براتون...
بازخوانی شعری که حدادعادل برای رهبر شهید سروده بود
play_arrow
بازخوانی شعری که حدادعادل برای رهبر شهید سروده بود
روایت مستند از لحظات دلهره‌آور حمله موشکی به دادگستری لار
play_arrow
روایت مستند از لحظات دلهره‌آور حمله موشکی به دادگستری لار
یورش شهرک‌نشینان صهیونیست به سلفیت در کرانه باختری
play_arrow
یورش شهرک‌نشینان صهیونیست به سلفیت در کرانه باختری
ما می‌کشیمت!
play_arrow
ما می‌کشیمت!
شور و اشتیاق زائران رضوی در جوار مرقد امام شهید
play_arrow
شور و اشتیاق زائران رضوی در جوار مرقد امام شهید
شلیک موشک‌های کروز علیه شناورهای متخاصم دشمن آمریکایی
play_arrow
شلیک موشک‌های کروز علیه شناورهای متخاصم دشمن آمریکایی
ترامپ: ایران ضعیف‌تر شده؛ هنوز موشک دارد اما دیگر آن قدرت سابق را ندارد
play_arrow
ترامپ: ایران ضعیف‌تر شده؛ هنوز موشک دارد اما دیگر آن قدرت سابق را ندارد
خبر بزرگ جهانبخش؛ علیرضا به لیگ برتر ایران می‌آید؛ کدام تیم؟
play_arrow
خبر بزرگ جهانبخش؛ علیرضا به لیگ برتر ایران می‌آید؛ کدام تیم؟
صله رحم در عصر شلوغی؛ راهکارهای خلاقانه برای حفظ پیوندها
صله رحم در عصر شلوغی؛ راهکارهای خلاقانه برای حفظ پیوندها
ویژگی های ممتاز رهبر شهید انقلاب / دکتر اسماعیلی
play_arrow
ویژگی های ممتاز رهبر شهید انقلاب / دکتر اسماعیلی
«تا چه زمانی در مقابل دشمن متعهد باشیم؟؛ از «أَوْفُوا بِعَهْدِی» تا «قاتِلُوا أَئِمَّةَ الْکُفْرِ»»
«تا چه زمانی در مقابل دشمن متعهد باشیم؟؛ از «أَوْفُوا بِعَهْدِی» تا «قاتِلُوا أَئِمَّةَ الْکُفْرِ»»
شبکه های اجتماعی و الگوریتمشان چطور دستکاری میشوند؟
شبکه های اجتماعی و الگوریتمشان چطور دستکاری میشوند؟