About the Course#

Unix/Linux Shell Scripting is intended to cover beginner to intermediate-level shell script development, and is aimed at Unix/Linux system administrators, database, network and security system administrators, and software developers who work in a Unix/Linux environment.

This course teaches the development of scripts using the Bash shell-script interpreter.

Course Goals#

Unix/Linux Shell Scripting is designed to:

  • Introduce Unix/Linux users to automating common repetitive system administration and configuration tasks
  • Provide a comprehensive grasp of shell-script syntax and semantics
  • Ensure a firm grasp of script development and debugging methodology

Who Should Attend#

Unix/Linux users who are responsible for system administration, and who already have exposure to common Unix/Linux concepts and have experience with common Unix/Linux commands and file-system manipulation.

Course Outline#

What is covered by the course#

  • Shell scripting concepts
    • Overview of different interpreters commonly available (and Why Bash)
    • Executing commands: built-in commands and the command PATH
    • Elements of Bash scripts
  • Writing and debugging scripts
    • Creating and executing scripts
    • Debugging scripts
  • Bash Script Execution
    • Bash initialisation files
    • Variables
    • Built-in variables
    • Shell expansion
    • Aliases
    • Special characters
  • Pipelines and sub-shells
  • Common scripting tools
    • Regular Expressions
    • grep
    • sed - Stream Editor
    • awk Pattern matching and replacement
  • Bash programming
    • Conditional logic - if and case statements
    • Repetition - for, while and until loops
    • Exit status
    • Tests
    • The shift} built-in command
    • I/O redirection
  • Interactive scripts
    • Displaying messages
    • Getting user input
  • Functions
  • Security Issues
    • Signals and Traps
    • Permissions and Ownership
    • PATH revisited

Topics NOT Covered by this Course#

  • Common Unix/Linux commands and concepts.
  • Use of vi (or any other text editor)

CoursewareCategory