Introduction to Perl Programming Essentials is an Introductory-level practical, hands-on Perl scripting training course that guides the students from the basics of writing and running Perl scripts to using more advanced features such as file operations, report writing, the use of regular expressions, working with binary data files, and using the extensive functionality of the standard Perl library. Students will immediately be able to use Perl to complete tasks in the real world.


* Actual course outline may vary depending on offering center. Contact your sales representative for more information.

Learning Objectives

Working within in an engaging, hands-on learning environment, guided by our expert web development, PHP practitioner, students will learn to:
Create a working script that gets input from the command line, the keyboard, or a file
Use arrays to store and process data from files
Create formatted reports
Use regular expressions
Use the appropriate types of variables and data structures
Refactor duplicate code into subroutines and modules
What is available in the standard library
Use shortcuts and defaults, and what they replace

  • Session: An Overview of Perl

  • What is Perl?

    Perl is compiled and interpreted

    Perl Advantages and Disadvantages

    Downloading and Installing Perl

    Which version of Perl

    Getting Help

  • Session: Creating and running Perl Programs

  • Structure of a Perl program

    Running a Perl script

    Checking syntax and warnings

    Execution of scripts under Unix and Windows

  • Session: Basic Data and I/O

  • Numeric and Text literals

    Math operators and expressions

    Scalar variables

    Default values

    Writing to standard output

    Command line arguments

    Reading from the standard input

  • Session: Logic and Loops

  • About flow control

    The if statement and Boolean values

    Using unless and elsif

    Statement modifiers

    warn() and die()

    The conditional construct

    Using while loop and its variants

    Using the for loop

    Exiting from loops

  • Session: Lists and Arrays

  • The list data type

    Accessing array elements

    Creating arrays

    List interpolation

    Arrays and memory

    Counting elements

    Iterating through an array

    List evaluation

    Slices and ranges

  • Session: Reading and writing text files

  • File I/O Overview

    Opening a file

    Reading text files

    Writing to a text file

    Arrays and file I/O

    Using the <> operator

  • Session: List functions

  • Growing and shrinking arrays

    The split() function

    Splitting on whitespace

    Assigning to literal lists

    The join() function

    The sort() function

    Alternate sort keys

    Reversing an array

  • Session: Formatting output

  • Using sprintf() and printf()

    Report formatting overview

    Defining report formats

    The write() function

    Advanced filehandle magic

  • Session: Hashes

  • Hash overview

    Creating hashes

    Hash attributes

    Traversing a hash

    Testing for existence of elements

    Deleting hash elements

  • Session: References

  • What is a reference?

    The two ways to create references

    References to existing data

    References to anonymous data

    Dereferencing scalar, array, and ash references

    Dereferencing elements of arrays and hashes

    Multidimensional arrays and other data structures

  • Session: Text and Regular Expressions

  • String length

    The substr() function

    The index() and rindex() functions

    String replication

    Pattern matching and substitution

    Regular expressions

  • Session: Raw file and data access

  • Opening and closing raw (binary) files

    Reading raw data

    Using seek() and tell()

    Writing raw data

    Raw data manipulation with pack() and unpack()

  • Session: Subroutines and variable scope

  • Understanding packages

    Package and Lexical variables

    Localizing builtin variables

    Declaring and calling subroutines

    Calling subroutines

    Passing parameters and returning values

  • Session: Working with the operating system

  • Determining current OS

    Environment variables

    Running external programs

    User identification

    Trapping signals

    File test operators

    Working with files

    Time of day

  • Session: Shortcuts and defaults

  • Understanding $_

    shift() with no array specified

    Text file processing

    Using grep() and Using map()

    Command-line options for file processing

  • Session: Data wrangling

  • Quoting in Perl

    Evaluating arrays

    Understanding qw( )

    Getting more out of the <> operator

    Read ranges of lines

    Using m//g in scalar context

    The /o modifier

    Working with embedded newlines

    Making REs more readable

    Perl data conversion

  • Session: Using the Perl Library

  • The Perl library

    Old-style library files

    Perl modules

    Modules bundled with Perl

    A selection of modules

    Getting modules from ActiveState

    Getting modules from CPAN

    Using Getopt::Long

  • Session: Some Useful Tools

  • Sending and receiving files with Net::FTP

    Using File::Find to search for files and directories

    Grabbing a Web page

    Some good places to find scripts

    Perl man pages for more information

    Zipping and unzipping files


This course is appropriate for anyone who wants to create applications or modules to automate and simplify common tasks with Perl.




Students should already have a working, user-level knowledge of an operating system such as UNIX or Windows. While not mandatory, basic skills with at least one other programming language are desirable.


Length: 4.0 days (32 hours)


Not Your Location? Change

Course Schedule:

Schedule select
10:00 AM ET -
6:00 PM ET
Filling Fast
Schedule select
10:00 AM ET -
6:00 PM ET
Filling Fast