Search our courses

Perl is a scripting language which allows for rapid prototyping of projects formerly done with a programming language or a shell. It incorporates all the functionality of C (including a UNIX system interface), the Shells, grep, sed, and awk. The topics in the course will aid all computer users – from end user to programmer to administrator alike.

Introduction to Perl Programming

Course Code



4 Days

Course Fee




Target Audience

This Introduction to Perl Programming training course is for programmers, end users, system administrators, network administrators, CGI script writers, or anybody who is interested in automating tasks but doesn’t want to learn all the details of a full blown programming language.

Attendee Requirements

Students should have some experience with either a programming language (preferably C), or any of the UNIX shells. These skills are taught in the following courses:

If you have any questions or doubts as to whether you meet the pre-requisites for this course, or indeed are wondering which course best suits you, please Contact Us to discuss your suitability for course attendance.

Expand all

Course Description

Perl is a scripting language which allows for rapid prototyping of projects formerly done with a programming language or a shell. It incorporates all the functionality of C (including a UNIX system interface), the Shells, grep, sed, and awk. The topics in the course will aid all computer users – from end user to programmer to administrator alike.

Course Outline

Chapter 1: Getting Started with Perl

What is Perl?

Where Can I Get Perl?

A Simple Perl Program

Simple I/O

Perl Variables

Control Flow – Decisions

Control Flow – Loops

Altering Loop Control Flow

Statement Modifiers

What Is True And What Is False?

The Special Variable $_

Chapter 2: Perl Operators


Table Of Perl Operators

Arithmetic Operators

String Operators

Relational Operators

Logical Operators

Bitwise Operators

Assignment Operators

The Conditional Operator

Range Operator

String Functions

The eval Function

Chapter 3: I/O


String Literals

The print Function

Here Documents

The printf Function

The sprintf Function


Opening Disk Files

File Open Errors

The die and warn Functions

File Operators

Chapter 4: Arrays

Basic Concepts

Assigning Values To An Array

Accessing Array Elements

Array Functions

push and pop


sort, reverse, and chop

split and join



Command Line Arguments

Chapter 5: Associative Arrays

Basic Concepts

Associative Array Functions

Updating Associative Arrays

Accessing Environment Variables

Chapter 6: Subroutines

Calling Subroutines

Passing Arguments to Subroutines

Returning Values from Subroutines

The require Function

Packages and Modules

The @INC Array

Predefined Subroutines

Comparison Subroutines for Sorting

Chapter 7: Pattern Matching and Regular Expressions


Regular Expression Syntax

The Match Operator

Regular Expression Meta-Characters


Single Character Matches

Some Special Issues

Character Classes

Multiple Character Matches


The Substitution Operator

The Translation Operator

Chapter 8: Accessing System Resources


File and Directory System Calls

The stat Function

The utime Function

The fork Function

The exec and wait Functions

Handling Signals

The system Function

Command Substitution

Opening Pipe Files

Chapter 9: Generating Reports with Perl


Formatting Examples

Multi-Line Values

Multi-Line Text Blocks

Sending a Report to a File

The select Function

The Special Variable $~

Top-of-Page Formats

Bottom-of-Page Formats

A Sample Report

Chapter 10: Perl and CGI

What is CGI?

Web Servers and Browsers


HTML Forms

Form Elements

A Typical CGI Application

CGI Input

CGI Output

Using the Module

CGI Environment Variables

Also Discussed:

Command Line Options and Debugging

Running Perl on the Command Line

Summary of Command Line Options

The Perl Debugger

Perl Debugger Commands

Other Debugging Aids

The strict Module

More About Regular Expressions

Remembered Matches

Greedy Regular Expressions

Nested Remembered Patterns

Matching for Multiple Occurrences in a Loop

References and Data Structures


Syntactic Sugar

Anonymous Arrays

Higher Dimensional Arrays

References and Subroutines

Comparing Perl 4 and 5




Advanced Perl

What is in the Advanced Perl Course

A Taste of Object Orientation

A Taste of Network Programming

Perl Development Using Eclipse

Features of the Perl Plugin

Creating a Perl Project

Running a Perl Program

Preferences – EPIC

Preferences – Editor

Preferences – Content Assist

Preferences – Folding

Preferences – Mark Occurrences

Preferences – Templates


Preferences – Source Formatter

Preferences – Task Tags

Accessing Perl Documentation

Project Properties


Testing Regular Expressions

Learning Path

There are a number of options of suitable follow-on courses, depending on your business needs. Please Contact Us for further details.

Ways to Attend
  • Attend a public course, if there is one available. Please check our Schedule, or Register Your Interest in joining a course in your area.
  • Private onsite Team training also available, please Contact Us to discuss. We can customise this course to suit your business requirements.

Private Team Training is available for this course

We deliver this course either on or off-site in various regions around the world, and can customise your delivery to suit your exact business needs. Talk to us about how we can fine-tune a course to suit your team's current skillset and ultimate learning objectives.

Private Team Training | Contact us

Technical ICT learning & mentoring services

Private Team Training

Our instructors are specialist consultants with vast real world experience and expertise allowing them to design and deliver client-focused courses for your organisation.

Learn more about our Private Team Training

What Our Clients Say

“Given the breadth of the course, I think it was very well structured and organised, I got a lot
out of it.”     


JVM Tuning - Bespoke Course

Live Online - May 2020


“This was an excellent course and was lots of fun to attend. Instructor started with basic intro to
containerization, then explained Kubernetes and the different components (Container
engine, orchestrator, control plane) which all made sense because of the containerization
intro. The parts of the course layered on top of one another to give a good understanding of


Kubernetes for App Developers - GTLFKAD

Live Online - Nov 2020


“Really enjoyed the course, it has been an eye opener on opportunities to steer how we approach the cloud from a IT Service Management perspective.”


Professional Cloud Service Manager - GTC13

Live Online May 2020


''Fantastic course, looking forward to applying this in my work and home life. Excellent, practical approach, very motivational. I think the entire company should attend training.''


Being Agile in Business - GTBAB

Sept 2019

“The instructor was great! I didn't expect such a good level of teaching with what some may
consider a dry subject. This was simply great!”  


Linux LPIC-1 - GTU8

Live Online - August 2020


"Intelligence is the ability to avoid doing work, yet
getting the work done"

Linus Torvalds, creator of Linux and GIT

Technical ICT learning & mentoring services

About GuruTeam

GuruTeam is a high-level ICT Learning, Mentoring and Consultancy services company. We specialise in delivering instructor-led on and off-site training in Blockchain, Linux, Cloud, Big Data, DevOps, Kubernetes, Agile, Software & Web Development technologies. View our Testimonials

Download our eBrochure
Our Accreditation Partners


Upcoming Courses

Kubernetes Administration

31 May - 4 June 2021

Live Online

This Kubernetes Administration Certification training course is suitable for anyone who wants to learn the skills necessary to build and administer a Kubernetes cluster

Learn More


22 - 25 June 2021 

Live Online

This Linux certification training course teaches in-depth skills in the basics of Linux Administration.

Learn More


14 - 15 June 2021

Live Online

The purpose of the certification and its associated course is to impart, test and validate knowledge of DevOps basic vocabulary, principles and practices.

Learn More


May 18 – 20 2021

Live Online        

A comprehensive introduction to the core syntax and functions provided by Python, including coverage of its object-oriented and functional programming features.

Learn More


Stay up to date, receive updates on scheduled dates, new courses, offers, and events.

Subscribe to our Newsletter