Your SlideShare is downloading. ×
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Perl Scripting
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Perl Scripting

6,859

Published on

My presentation for GTUG Summer Camp 2010,Madurai on "Introduction to Perl" …

My presentation for GTUG Summer Camp 2010,Madurai on "Introduction to Perl"

Published in: Technology
0 Comments
7 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,859
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
446
Comments
0
Likes
7
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Perl Scripting M. Varadharajan Thiagarajar College of Engineering
  • 2. What We Will Cover?  What is Perl?  Creating and Executing Perl scripts  Standard Input and Output  Scalar Variables  Arrays  Hashes  Magic Variables: $_ and @ARGV
  • 3. What We Will Cover?  Control Structures  Looping Structures  File Operations  Split & Join  Using shell commands  Advanced Concepts you'll need to know
  • 4. What is Perl  Perl stands for − 'Practical Extraction and Reporting Language'  Developed by Larry Wall in 1987  Its called Perl and not PERL  High level Scripting Language  Dynamically Typed  Support for object oriented programming
  • 5. Some Advantages of Perl  Free and Open source  Fast, Flexible, Secure and Fun  Interpreted Language  Mature Community  Portability  Very good Documentation (POD)  Availability of Modules (CPAN)
  • 6. Typical Uses of Perl  Text processing  System administration tasks  CGI and web programming  Database interaction  Other Internet programming
  • 7. Hello World!  This script will print 'Hello World!'  Creation of the Perl Script: − Open your Text Editor (!MSWORD) − Type the following block & save #!/usr/bin/perl -w print “Hello World! n”;
  • 8. Hello World!  Some point to Note: − All Perl statements end with ';' − Add 'use strict;' if you're serious on the script − Comments in Perl start with '#' − The first line is known as Shebang line #!/usr/bin/perl -w
  • 9. Hello World!  Executing the script: − Call the interpreter with the script perl helloworld.pl or − Grant Executable Permissions & Execute Chmod a+x helloworld.pl ./helloworld.pl
  • 10. Scalar Variables  Place to store a single item of data  Scalar variables begin with '$'  Declaration is as follows (in strict mode) my $name;  Assigning values is similar to c $name = “varadharajan”; $total = 100; $cost = 34.34
  • 11. Standard Output  Print function is used  Syntax: print “some string”;  Example: (script prints “Perl is cool”) #/usr/bin/perl -w my $name = “perl”; print “$name is cool n”;
  • 12. Standard Input  Special operator '<>' is used  Synatx: $scalar = <STDIN>;  Example: (Get name and print it) #/usr/bin/perl -w print “Enter Name : ”; my $name = <STDIN>; print “Hello $name”;
  • 13. String Operations  Chomp: chomp($name); #removes the trailing new line  Concatenation: my $name = “Varadharajan ” . “Mukundan”;  Multiplication: $name = “hello ” x 3; #Assigns “hello hello hello” to name
  • 14. Arrays  Set of Scalar variables  Arrays start with '@'  Declaring Arrays: − Syntax: my @array_name=(value1,value2); − Example: my @list = ('varadharajan',99,'cool');
  • 15. Arrays  Accessing individual elements: − Syntax: $array_name[index]; #index starts with 0 − Example: print $list[1]; #prints 10
  • 16. Array Slices  Access a set of continuous elements in an array. − Syntax: @array_name[start_index .. end_index]; − Example: print @list[ 0 .. 2 ]; # Prints $list[0], $list[1], $list[2]
  • 17. Hashes  “Key – value ” Data Structure.  Keys present in a hash must be unique  Value may be same for multiple keys  Also commonly known as dictionaries
  • 18. Hashes  Initializing a Hash: − Syntax: my %hash_name = ( key => 'value'); − Example: my %students = ( name => 'varadharajan', age => 1 );
  • 19. Hashes  Accessing a Hash − Syntax: $hash_name{key_name}; − Example: print $student{name}; #prints varadharajan print $student{age}; #prints 18
  • 20. Hash Slices  Just like array slices  Syntax: @hash_name{'key1','key2'};  Example: print @student{'name','age'};
  • 21. Magic Variable: $_  Default variable for storing values, if no variables are manually specified.  Example: my @list = (1,2,4,34,5,223); foreach (@list) { print; } # prints the entire list
  • 22. Magic Variable: @ARGV  This Array is used to store the command line arguments  Example print $ARGV[0]; # when this script is executed like this # perl test1.pl text # it prints “text”
  • 23. Conditional control Structures  IF – ELSIF – ELSE statement: − Syntax: if (EXPR) {BLOCK} elsif (EXPR) {BLOCK} else {BLOCK} − Example: if($age==18) {print “Eighteen”;} elsif($age==19) {print “Nineteen”} else {print $age;}
  • 24. Looping Structures  While: $i = 0; while ($i < 10) { print $i; $i++; } # Prints 0123456789
  • 25. Looping Structures  For: for($i=0;$i<10;$i++) { print $i; } # prints 0123456789
  • 26. Looping Structures  Foreach: my @list = (“varadha”,19); foreach $value (@list) { print $value; } # prints the list
  • 27. File Operations  Opening a File: − Syntax: open(FILE_HANDLE , “[< |> |>>]File_Name”); − Example: open(MYFILE, “<myfile.txt”); − Available Modes: < - Read Mode > - Write Mode >> - Append Mode
  • 28. File Operations  Reading from a File: − Syntax: @array_name = <FILE_HANDLE>; − Example: @data = <MYFILE>; # Now @data contains the data presents in # File whose file handle is MYFILE
  • 29. File Operations  Writing to a File: − Syntax: print FILE_HANDLE “Text”; − Example: print MYFILE “This is the content”;
  • 30. File Operations  Closing a File: − Syntax: close(FILE_HANDLE); − Example: close(MYFILE);
  • 31. Split Function  Splits a scalar variable into arrays − Syntax: @array = split(PATTERN,EXPR); − Example: @words = split(/ /,$sentence);
  • 32. Join Function  Used to join all elements in an array to form a scalar − Syntax: $string = join(Joining_element,@arrays); − Example: $sentence = join(' ',@words);
  • 33. Executing Shell Commands  Makes us executed Shell commands from a Perl script − Syntax: system(command); − Example: $ls_data = system(“ls”);
  • 34. Advanced Concepts  Subroutines  Global and Local variables  Regular Expressions  OO programming  CPAN
  • 35. Perl Resources  Perl POD  Learning Perl from o'reilly  Programming Perl from o'reilly  Perl Beginners Mailing list at http://www.nntp.perl.org/group/perl.beginn ers/
  • 36. That's All Folks  Ping me at srinathsmn@gmail.com Thank You

×