Perl Scripting
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

Perl Scripting

  • 7,382 views
Uploaded 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"

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
7,382
On Slideshare
7,332
From Embeds
50
Number of Embeds
6

Actions

Shares
Downloads
392
Comments
0
Likes
5

Embeds 50

http://www.skillschool.co.in 20
http://www.slideshare.net 19
http://skillschool.co.in 7
http://theexamtime.com 2
http://nclc.blackboard.com 1
http://www.theexamtime.com 1

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