Wintellect Logo
Contact Us!

Instructor-Led Training
Perl Programming Essentials

5 day course

Language: Perl

Overview

Perl Programming Essentials is an Introductory-level practical, hands-on Perl scripting training course that 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.

Key Learning Areas

  • 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

Course Outline

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

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

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

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

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

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

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

Formatting Output

  • Using sprintf() and printf()
  • Report formatting overview
  • Defining report formats
  • The write() function
  • Advanced filehandle magic

Hashes

  • Hash overview
  • Creating hashes
  • Hash attributes
  • Traversing a hash
  • Testing for existence of elements
  • Deleting hash elements

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

Text and Regular Expressions

  • String length
  • The substr() function
  • The index() and rindex() functions
  • String replication
  • Pattern matching and substitution
  • Regular expressions

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()

Subroutines and Variable Scope

  • Understanding packages
  • Package and Lexical variables
  • Localizing builtin variables
  • Declaring and calling subroutines
  • Calling subroutines
  • Passing parameters and returning values

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

Shortcuts and Defaults

  • Understanding $_
  • shift() with no array specified
  • Text file processing
  • Using grep() and Using map()
  • Command-line options for file processing

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

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

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

Who Benefits

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

Prerequisites

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.

Newsletter

Public Classes

We're sorry, there are no open enrollment classes currently scheduled for this course.