0845 450 6120

Introduction to Perl Programming

UNIX, Linux and Windows administrators, software engineers, programmers and power users. Previous experience with a procedural or object-oriented programming language is assumed. Knowledge of UNIX scripting tools and regular expressions is helpful.

Learning Objectives

  • Quickly create effective, reusable Perl scripts
  • Take advantage of Perl 5's many small operators and built-in functions
  • Structure code with user-generated subroutines
  • Exploit the many additional object-oriented packages available on the Internet
  • Build real-world scripts that can be used on UNIX, Linux and Win32 platforms
  • Solve complex data manipulation tasks with ease


Previous experience with a procedural or object-oriented programming language is assumed. Knowledge of UNIX scripting tools and regular expressions is helpful.

Course Content

Introduction to Perl

  • Perl strengths: ease of programming with operators, flexibility, execution speed
  • Reusable tool building for system admin, text manipulation, the Internet
  • Popular application areas: networking, text filtering, Web application programming

Perl Syntax Fundamentals

Running Perl programs

  • Invoking Perl scripts under UNIX/Linux with "shebang" syntax
  • Starting Perl scripts under Win32 via command line associations
  • Getting help with perldoc

Variable types and contexts

  • Scalars vs. lists vs. hashes
  • Strings and interpolated strings
  • Making sense of special variables
  • Working in the right context

Compound data structures

  • Generating references to named variables
  • Creating references to anonymous data
  • Building multidimensional arrays
  • Working with multidimensional hashes

Managing files and user input

  • Handling standard I/O streams
  • Defining and using file handles
  • Parsing command line arguments
  • Reading and writing data files

Pattern Matching and Operators

Perl regular expressions

  • Extracting important text information
  • Building on UNIX regular expressions
  • Altering data with substitutions
  • Performing global and case-insensitive matches

Perl's small operator groups

  • Manipulating arithmetic expressions
  • Replicating and growing strings
  • Saving time with assignment operators
  • Obtaining file attributes
  • Making decisions with logical operators
  • Establishing and using ranges

Looping, Decisions and Flow Control

Perl support for conventional flow control constructs

  • Making decisions with if/else/elseif
  • Creating loops with do, while, until, for and foreach

Perl-specific constructs

  • if and unless as statement modifiers
  • Altering flow with next and last
  • Constructing switch statements


Writing subroutines

  • Defining and calling a subroutine
  • Passing and receiving parameters
  • Returning values to the caller

Making data work for you

  • Localising variables: my and local
  • Accessing global variables
  • Extracting local variables with shift

Built-in and Add-on Functions

Common data manipulation requirements

  • String functions for text manipulation
  • Processing arrays with list functions
  • Arranging information with sort
  • Sorting data on multiple fields

I/O and tool building

  • Manipulating file system entries
  • Reading binary files
  • Dissecting and creating records with split and join
  • Formatting tabular output

Perl and Object Orientation

How Perl implements object orientation

  • An introduction to OO in Perl
  • Methods, classes and constructors
  • Surveying and obtaining third-party packages from CPAN

Accessing OO packages

  • How to use use
  • Defining a schema to employ OO modules
  • Calling methods with the -> syntax
  • Passing initialisation parameters
One Month
Two Months
Three Months
More than Three Months
PRINCE2 Foundation & Practitioner
MSP Foundation & Practitioner
APMP Certificate
ITIL Foundation
Scrum in One Day
Certified ScrumMaster
ISTQB Software Test Foundation
Microsoft Project
BCS Business Analysis Practice
Other - Please Specify Below

Online Courses

You may prefer an online course if you are looking for a flexible and cost-effective solution. Online courses allow you to study at your own pace, at a time that suits you.

We have the following eLearning options available:

Our Customers Include