Before you start
Learn what these tutorials can teach you and how you can get the most from them.
The Linux Professional Institute (LPI) certifies Linux system administrators at two levels: junior level (also called "certification level 1") and intermediate level (also called "certification level 2"). To attain certification level 1, you must pass exams 101 and 102; to attain certification level 2, you must pass exams 201 and 202.
developerWorks offers tutorials to help you prepare for each of the four exams. Each exam covers several topics, and each topic has a corresponding self-study tutorial on developerWorks. For LPI exam 102, the nine topics and corresponding developerWorks tutorials are:
| LPI exam 102 topic | developerWorks tutorial | Tutorial summary |
|---|---|---|
| Topic 105 |
LPI exam 102 prep: Kernel | Learn how to install and maintain Linux kernels and kernel modules. |
| Topic 106 |
LPI exam 102 prep: Boot, initialization, shutdown, and runlevels | Learn how to boot a system, set kernel parameters, and shut down or reboot a system. |
| Topic 107 |
LPI exam 102 prep: Printing | Learn how to manage printers, print queues and user print jobs on a Linux system. |
| Topic 108 |
LPI exam 102 prep: Documentation | Learn how to use and manage local documentation, find documentation on the Internet and use automated logon messages to notify users of system events. |
| Topic 109 | LPI exam 102 prep: Shells, scripting, programming, and compiling | (This tutorial.) Learn how to customize shell environments to meet user needs, write Bash functions for frequently used sequences of commands, write simple new scripts, using shell syntax for looping and testing, and customize existing scripts. See the detailed objectives below. |
| Topic 111 | LPI exam 102 prep: Administrative tasks | Coming soon. |
| Topic 112 | LPI exam 102 prep: Networking fundamentals | Coming soon. |
| Topic 113 | LPI exam 102 prep: Networking services | Coming soon. |
| Topic 114 | LPI exam 102 prep: Security | Coming soon. |
To pass exams 101 and 102 (and attain certification level 1), you should be able to:
- Work at the Linux command line
- Perform easy maintenance tasks: help out users, add users to a larger system, back up and restore, and shut down and reboot
- Install and configure a workstation (including X) and connect it to a LAN, or connect a stand-alone PC via modem to the Internet
To continue preparing for certification level 1, see the developerWorks tutorials for LPI exams 101 and 102, as well as the entire set of developerWorks LPI tutorials.
The Linux Professional Institute does not endorse any third-party exam preparation material or techniques in particular. For details, please contact info@lpi.org.
Welcome to "Shells, scripting, programming, and compiling," the fifth of nine tutorials designed to prepare you for LPI exam 102. In this tutorial, you learn how to use the Bash shell, how to use shell programming structures to create functions and scripts, how to customize your shell environment, how to set and unset environment variables, and how to use the various login scripts.
The title for this tutorial duplicates the corresponding topic in the LPI 102 exam, and therefore includes "programming and compiling," but the LPI objectives limit "programming" to that required for writing shell functions and scripts. And no objectives for compiling programs are included in the topic.
This tutorial is organized according to the LPI objectives for this topic. Very roughly, expect more questions on the exam for objectives with higher weight.
| LPI exam objective | Objective weight | Objective summary |
|---|---|---|
| 1.109.1 Customize and use the shell environment | Weight 5 | Customize shell environments to meet user needs. Set environment variables (at login or when spawning a new shell). Write Bash functions for frequently used sequences of commands. |
| 1.109.2 Customize or write simple scripts | Weight 3 | Write simple Bash scripts and customize existing ones. |
To get the most from this tutorial, you should have a basic knowledge of Linux and a working Linux system on which to practice the commands covered in this tutorial.
This tutorial builds on content covered in previous tutorials in this LPI series, so you may want to first review the tutorials for exam 101. In particular, you should be thoroughly familiar with the material from the "LPI exam 101 prep (topic 103): GNU and UNIX commands" tutorial, as many of the building blocks for this tutorial were covered in that tutorial, especially the section "Using the command line."
Different versions of a program may format output differently, so your results may not look exactly like the listings and figures in this tutorial.


