Perl for System Administration

An introduction on how to program in Perl for Systems Administrators

• 5 days • £3295 • world-wide

You will learn:

  • Why IPv6 is necessary and unavoidable
  • How IPv6 differs from IPv4
  • How the IPv6 protocol works
  • Why IPv6 is important to your business
  • About the many new features in IPv6
  • In what way IPv6 can benefit businesses and change the way they use their network
  • The challenges of deploying IPv6 in current networks
  • The current status of IPv6 Development
  • Changes to common network services with IPv6
  • Auto-configuration features of IPv6
  • What is involved in migrating to IPv6


Course Benefits

IPv6 is the result of many years of research and activity by the international Internet community. IPv6 provides increased addressing space, improved routing, better security and support for new applications.

The implementation of IPv6 is inevitable and will impact on all companies that maintain, implement or use IP networks.

In this short course, you will learn about the main features of IPv6 and how it will affect IP networks. This will enable you to determine how IPv6 will impact your organisation and will help you to plan a migration strategy.

Demonstrations will show how IPv6 works, how to implement IPv6 and IPv6 network services and applications.


Who should attend?

Programmers who need to administer IT systems on any of today's major platforms and in multi-platform environments.

Delegates with backgrounds in C like languages will recognise elements of Perl syntax and can use much existing knowledge, but must beware the temptation to translate literally from C/C++. Perl's native way of doing things is invariably more efficient and better adapted to specialist system administration tasks.

System administrators with limited scripting (rather than pure programming) experience may need more than 4 days to benefit fully from this course.

Like all our Perl courses, this course is designed for cross-platform system administration, but Unix System Administrators will benefit particularly by recognising tools which have been incorporated into Perl from their favourite Operating System.


Course Contents

Preparing to Learn Perl

  • Things you need to know and do in order to run Perl and learn Perl programming
  • A module designed for complete beginners
  • The Perl compiler/interpreter
  • Perl under Unix/Linux
  • Perl under MS Windows 2000/NT/95/98/ME (perl.exe)
  • ActiveState Perl
  • Making programs executable
  • Perl from the command line
  • Specify the perl compiler/interpreter (#!)
  • Using plain text
  • Writing a very simple program
  • Running a very simple program
  • Basic syntax

Perl: The Absolute Minimum

  • Enough of the language to get started
  • The print command
  • Variables
  • Scalars - numbers and 'strings'
  • Assignment
  • Simple conditional tests - if "strings" "\n"
  • Lists
  • Arrays - for storing lists
  • foreach
  • Hashes
  • Other loops: while, for, do, until
  • Arrays - the rest
  • Simple input, e.g. while(<>)
  • Functions overview - recognising, writing, using
  • Regular expressions - perlre
  • Simple file handling - open, print
  • Subroutines - parameters in and out, listification, local variables
  • Help - perldoc, books, web

Perl: Beyond the Basics

  • More flow control
  • Statement modifiers
  • Quoting mechanisms - qq(), etc
  • Here documents
  • Uppercase/lowercase conversion
  • Splitting strings into lists
  • Joining lists into strings
  • Filtering lists with map
  • Sorting lists
  • The importance of context
  • Assignment shortcuts
  • Scoping rules
  • Special variables

Complex Data Structures & References

  • Limits of flat lists
  • Nesting arrays
  • Array references
  • Anonymous arrays
  • Named array references
  • Passing multiple arrays to/from functions
  • Hashes of arrays
  • Hash references
  • Arrays of hashes
  • Hashes of hashes
  • Complex nested data structures
  • Code references
  • Dispatch tables

Finding Out More For Yourself

  • How to read Perl's documentation
  • Where to find more information
  • Knowing what's out there to look for
  • FAQs

The Perl Debugger & Debugging Perl

  • Avoiding bugs
  • Perl's built-in debugger
  • Invoking the debugger
  • What you can do with the debugger
  • Understanding the debugger's command line interface
  • Knowing the debugger's basic command set
  • Exploring some extended functions
  • Graphical debuggers
  • Alternative debugging techniques

Using Perl Modules from CPAN

  • The Comprehensive Perl Archive Network (CPAN)
  • Why effective Perl programmers are efficient CPAN users
  • CPAN's philosophy
  • Finding modules
  • Installing Modules
  • Using modules
  • Some particularly useful modules

Command-Line Perl

  • General principles
  • Using Perl as a filter
  • Awk-like Perl
  • Many real world examples
  • Many examples using regular expressions
  • Command line flags

A Whistle-Stop Tour of the World of Perl

  • Wheels you don't need to re-invent
  • Common recipes
  • Common pitfalls

Advanced File Processing with Perl

  • Types of open
  • Filehandles
  • Reading line by line
  • Reading paragraph by paragraph
  • Reading entire files
  • Special variables
  • The flip-flop operator (..)
  • File test functions
  • Pipes

Perl Security Issues

  • Potential security pitfalls
  • Coding for security
  • Taint checking
  • Dangerous environment variables
  • File input
  • Set-user-id Perl programs
  • Permissions and users

System interaction

  • Connecting to other programs
  • Unsafe pipes
  • Using IO::Pipe
  • Grabbing a program's output
  • Other ways to run programs

Managing Users and Processes with Perl

  • User identity across platforms
  • Process control
  • Scheduling events
  • Managing disk quotas
  • Querying filesystem usage
  • Monitoring file operations
  • Monitoring network operations
  • Related perl modules

Managing Networks with Perl

  • Host Files
  • NIS and NIS+
  • DNS
  • LDAP
  • ADSI
  • Sending and receiving email
  • Related modules

Logging with Perl

  • Text logs
  • Binary logs
  • Handling state
  • Disk usage problems
  • Log analysis
  • Log munging
  • Logging related modules


IPv6 Demonstrations

This is a hands-on practical workshop based around the coding of real-world solutions to real-world problems.

The demonstrations include:

  • Basic TCP/IP Configuration
  • Subnetting
  • ARP
  • DHCP
  • Operation of TCP
  • DNS
  • Basic Networking Protocols, FTP, SMTP and HTTP
  • sic TCP/IP Configuration
  • Subnetting
  • ARP
  • DHCP
  • Operation of TCP
  • DNS
  • Basic Networking Protocols, FTP, SMTP and HTTP


The Lecturers

All our lecturers are practising network consultants with extensive experience of IPv6 networking on Unix and Windows in large commercial environments. They are ideally suited to bringing you the highest quality of training.



Our courses are available world-wide in our virtual classrooms accompanied by virtual labs. We also deliver on-site training and public training at venues around the world.

Please contact us if you are looking for training in your area.


  • Aberdeen, Scotland, UK
  • Basingstoke, England, UK
  • Edinburgh, Scotland, UK
  • Glasgow, Scotland, UK
  • Inverness, Scotland, UK
  • Leeds, England, UK
  • London, England, UK
  • Manchester, England, UK
  • Sheffield, England, UK
  • Europe - various locations
  • Ljubljana, Slovenia
  • Malaysia - various locations
  • Boston, USA
  • San Francisco, USA
  • New York, USA
  • Washington DC, USA
  • USA - various locations