Get in Touch

Course Outline

The simplest script

Choosing the shell (magic number #!, Shebang)

Calling the script

External and built-in commands

Special characters

  • Comment (#)
  • End of Line (;)
  • Empty statement (:)
  • Redirection of input and output (>, <, >>)
  • Redirecting output
  • Redirection of input
  • Stream (|)
  • Starting a process in the background (&)

Variables and Parameters

  • Destruction of variables (unset)
  • Variables with null values
  • Saving results to a variable (backquotes ``)
  • Parameter requests ($0, $#,$1, $2, $3...)
  • Manual shift
  • Quoting
  • Escape character (\)

Regular Expressions

Conditional statements

  • The if/then construct
  • The if/then/else construct
  • Nesting if statements
  • The if/elif construct
  • Case statements
  • Operators
  • Logical operators: and, or (&&, ||)
  • Test command

Completing the script

The exit statement

Using the program completion status in a script ($?)

Tests and Operators

  • Text file operators
  • Tests for file types
  • Tests for file attributes

Comparison operators

  • Comparing arithmetic using the if command
  • Integer comparison operators
  • Comparing strings
  • Complex comparisons (and, or)
  • Nesting comparison operators
  • The assignment operator
  • Arithmetic operators
  • Bitwise operators
  • Logical operators
  • Numeric constants

Loops

  • The for/in loop
  • The seq command
  • The while loop
  • The until loop
  • Loop control (break, continue)

Text Processing

  • Head, tail commands
  • Sort, Uniq, Expand, Unexpand
  • Cut, Paste, Join, Wc, Tr

Text search (grep)

Stream Editor (sed)

Interactive programs

  • Read command
  • User select

Features

Sleep command

If the script does not work? (Debugging)

Requirements

  • An understanding of basic Linux commands and file system navigation.
  • Experience with shell usage and simple text editing on Linux.
  • Completion of the 'Introduction to Linux' course is recommended but not required.

Audience

  • Linux users who wish to automate tasks using shell scripting.
  • System administrators looking to optimise server management and operations.
  • Developers and IT professionals seeking to enhance their Linux programming skills.
 14 Hours

Related Categories