UNIX/Linux Shell Scripting Training Course

Primary tabs

Course Language

This course is delivered in Polish or English.

Course Code

ulshscr

Duration Duration

14 hours (usually 2 days including breaks)

Requirements Requirements

The course is only suitable for those who have a good working knowledge of UNIX or have attended the Introduction to UNIX course.

Overview Overview

This 2 day course gives an introduction to the writing of UNIX Shell scripts using the Korn and Bash shells and to the more advanced features of UNIX including the batch editor sed and the text file processing language awk.

Although based on the Solaris version of UNIX running on a desktop PC, the principles learnt may be applied to all other versions of UNIX including Linux, AIX, HP-UX and SCO.

The course takes the format of a workshop, with a mix of lecture, working examples and practical exercises. Although the content may be customised, at least 1 day is normally needed to cover the core elements.

Full course notes are provided along with sample script files and free software tools for use in accessing a UNIX server.

Course Outline Course Outline

Introduction

  • Objectives
  • Course Schedule
  • Course Introductions
  • Pre-requisites
  • Bibliography
  • Delegate Responsibilities
  • Course Summary

Review of Basics - optional

  • Files
  • Directories and Processes
  • Displaying Directories - ls
  • Getting Help - man
  • Displaying Files - cat, more
  • Simple Commands
  • Piping - using | symbol
  • Redirection - using > symbol
  • Redirection - using >> symbol
  • Redirecting Input - using < symbol
  • Redirecting Errors
  • Using /dev/null
  • Foreground Jobs
  • Background Jobs - &
  • Stopping Jobs - kill
  • Special Files - . and ..
  • The Command Prompt - PS1
  • Creating Aliases
  • Using Aliases
  • Command history
  • Command Line Edit - using Arrow Keys
  • Command Line Edit - using vi
  • Customising the Shell
  • The Home Directory - HOME
  • The Working Directory - pwd
  • Changing Directories - cd
  • Make Directory - mkdir
  • Remove Directory - rmdir
  • Interactive Copy - cp -i
  • Interactive Move - mv -i
  • Interactive Remove - rm -i
  • Removing Directories - rm -r
  • Wild Cards - File Name Generation
  • Word count - wc
  • Finding Files - find
  • Finding Text in Files - grep, sort, cut, uniq, tr
  • Changing Permissions - chmod

Shell Programming

  • Creating Shell Scripts
  • Testing the Command
  • Creating the Script File
  • Adding Execute Permissions
  • Testing the Script
  • Running the Script - time
  • Running the Script - dot
  • Running the Script - exec
  • Running the Script - ksh
  • Debugging the Script
  • Passing Parameters
  • The read Command
  • Using read in Scripts
  • Choosing the Shell
  • Tidying The Output
  • Suppressing Input - stty

Special Characters and Variables

  • Quotation Marks
  • Quoted Strings - ", '
  • Escape Character - *
  • Quoted Strings - `
  • Using $(...)
  • System Variables - set
  • Other Special Variables
  • User Variables
  • User Variables - unset
  • Variables in Scripts
  • Typeset Command
  • Integer Variables
  • Special Constructs

Creating Menus

  • Conditions - case
  • Creating a Menu
  • Iteration - while, until
  • Holding the Output - sleep
  • Holding the Output - dummy read
  • Ending the Script
  • Ending the Loop
  • Hidden Option - forking a shell
  • Trapping Interrupts - trap
  • More on Interrupts
  • Highlighting Text- tput
  • Positioning the Cursor - backtab \b
  • Korn Shell Menu

Selection

  • Conditional Testing
  • Testing File Attributes
  • Testing File Permissions
  • Multiple Tests - Nested ifs
  • Multiple Tests - elseif
  • The NOT Condition
  • Multiple Conditions in One Test
  • Testing Strings
  • Using Square Brackets
  • Avoiding Null Input
  • Testing Numbers
  • More on case
  • Displaying Variables
  • Placing Spaces
  • Testing Commands

Iteration, Looping

  • Computations - let
  • Iteration - while, until
  • Infinite Loop
  • Iteration - for
  • More than 9 Parameters - shift

Sub-scripts and Functions

  • Local and Global Variables
  • Sub-scripts
  • Export Command
  • Exit Status
  • Aliases
  • Functions
  • Useful Functions
  • Return Status
  • Manipulating Functions
  • Functions in Scripts

Advanced Commands

  • Debugging - set
  • Setting - set
  • Merging Files - join
  • Merging Files - paste, basename and dirname
  • Job Control - jobs
  • Regular Expressions
  • Global Regular Expression Printer - grep
  • Expression grep - egrep
  • Fast grep - fgrep
  • Computations - expr
  • Computations – bc, eval Command,
  • Argument Processing
  • getopts Command
  • Using Arrays

Advanced Edit – vi & sed

  • vi - Mapping Key Combinations
  • Mapping Control Keys
  • Using Abbreviations
  • Editing Many Files
  • Regular Expressions
  • Global Insert
  • Here document,
  • Batch Stream Editor - sed, sed delete, -d, sed print, -p, sed suppress, -n, sed quit, -q, sed file, -f, sed Multiple Input, sed
  • Find and Replace
  • sed Example

Text File Processing - awk

  • The awk Programming Tool
  • Pattern Matching
  • Regular Expressions
  • Comparison Patterns
  • Compound Patterns
  • Range Patterns
  • Special Patterns
  • Built-in Functions
  • Troubleshooting awk Scripts
  • Passing Parameters
  • Using Contains
  • printf Function
  • Computations
  • Functions
  • substr
  • length
  • Action Statements
  • Control Flow Statements
  • Arrays
  • Arrays with for Loops
  • awk Examples

Guaranteed to run even with a single delegate!
Public Classroom Public Classroom
Participants from multiple organisations. Topics usually cannot be customised
From 1590PLN
(87)
Private Classroom Private Classroom
Participants are from one organisation only. No external participants are allowed. Usually customised to a specific group, course topics are agreed between the client and the trainer.
From 1590PLN
Request quote
Private Remote Private Remote
The instructor and the participants are in two different physical locations and communicate via the Internet
From 2380PLN
Request quote
SelfStudy SelfStudy
Self-study courses allow you to learn at your own pace on your own time. There is no live instructor involved. The participants use recorded video, quizzes and reading at their own convenience.
Price not set yet
Register Interest

The more delegates, the greater the savings per delegate. Table reflects price per delegate and is used for illustration purposes only, actual prices may differ.

Number of Delegates Public Classroom Private Classroom Private Remote
1 1590PLN 1590PLN 2380PLN
2 1065PLN 965PLN 1360PLN
3 890PLN 757PLN 1020PLN
4 803PLN 653PLN 850PLN
Cannot find a suitable date? Choose Your Course Date >>
Too expensive? Suggest your price

Related Categories


Course Discounts

Course Venue Course Date Course Price [Remote/Classroom]
Programming in C# 5.0 with Visual Studio 2012 Poznan, Garbary Mon, 2016-05-30 09:00 2685PLN / 1822PLN
Introduction to Machine Learning Wrocław, ul.Ludwika Rydygiera 2a/22 Mon, 2016-05-30 09:00 2730PLN / 1940PLN
Adobe Captivate Kielce Tue, 2016-05-31 09:00 1318PLN / 1127PLN
Excel and VBA Programming for Audit and Finance Professionals Szczecin Tue, 2016-05-31 09:00 1913PLN / 1513PLN
Programming in WPF 4.5 Warszawa, ul. Złota 3/11 Tue, 2016-05-31 09:00 2359PLN / 1355PLN
SQL Fundamentals Warszawa, ul. Złota 3/11 Wed, 2016-06-01 09:00 1358PLN / 853PLN
MS Excel - poziom średniozaawansowany Łódź, ul. Tatrzańska 11 Wed, 2016-06-01 09:00 1044PLN / 840PLN
SQL language in MSSQL Toruń, ul. Żeglarska 10/14 Wed, 2016-06-01 09:00 1568PLN / 1198PLN
Bezpieczeństwo aplikacji internetowych Katowice Wed, 2016-06-01 09:30 3606PLN / 2531PLN
Test Automation with Selenium Kraków Mon, 2016-06-06 09:00 3200PLN / 2433PLN
Test Automation with Selenium Katowice Tue, 2016-06-07 09:30 3431PLN / 2469PLN
MS Excel - poziom średniozaawansowany Katowice Wed, 2016-06-08 09:00 700PLN / 771PLN
Programming in C++ Olsztyn, ul. Kajki 3/1 Mon, 2016-06-13 09:00 2936PLN / 2395PLN
Container management with Docker Trójmiasto Tue, 2016-06-14 09:00 4360PLN / 2774PLN
Excel Advanced Katowice Mon, 2016-06-20 09:00 775PLN / 933PLN
Test Automation with Selenium Warszawa, ul. Złota 3/11 Mon, 2016-06-20 09:00 3431PLN / 2327PLN
PostgreSQL Administration and Development Lublin Mon, 2016-06-20 09:30 4025PLN / 3134PLN
Introduction to R Warszawa, ul. Złota 3/11 Tue, 2016-06-21 09:00 3058PLN / 2123PLN
Creating and managing Web sites Wrocław, ul.Ludwika Rydygiera 2a/22 Mon, 2016-06-27 09:00 3410PLN / 2555PLN
Programming in C Gdynia Mon, 2016-06-27 09:00 1590PLN / 1143PLN
Distributed Messaging with Apache Kafka Katowice Mon, 2016-06-27 09:30 4998PLN / 3288PLN
Design Patterns in C# Wrocław, ul.Ludwika Rydygiera 2a/22 Wed, 2016-06-29 09:00 1865PLN / 1392PLN
Visual Basic for Applications (VBA) for Analysts Poznan, Garbary Mon, 2016-07-04 09:00 1912PLN / 1278PLN
Debian Administration Poznan, Garbary Mon, 2016-07-04 09:00 3157PLN / 2083PLN
A Practical Guide to Successful Pricing Strategies Poznan, Garbary Wed, 2016-07-06 09:00 1427PLN / 1093PLN
Excel and VBA Programming for Audit and Finance Professionals Warszawa, ul. Złota 3/11 Mon, 2016-07-11 09:00 1913PLN / 1441PLN
Machine Learning Fundamentals with R Warszawa, ul. Złota 3/11 Mon, 2016-07-18 09:00 2523PLN / 1828PLN
Building Web Apps using the MEAN stack Szczecin Mon, 2016-07-18 09:00 5538PLN / 3351PLN
Microsoft Access - download the data Poznan, Garbary Wed, 2016-07-20 09:00 1117PLN / 856PLN
Python Programming Warszawa, ul. Złota 3/11 Mon, 2016-08-01 09:00 5790PLN / 3753PLN
Programming in WPF 4.5 Warszawa, ul. Złota 3/11 Mon, 2016-09-05 09:00 2359PLN / 1355PLN
BPMN 2.0 for Business Analysts Wrocław, ul.Ludwika Rydygiera 2a/22 Tue, 2016-09-27 09:00 3110PLN / 2337PLN

Upcoming Courses

VenueCourse DateCourse Price [Remote/Classroom]
GdyniaTue, 2016-06-14 09:00850PLN / 779PLN
KielceWed, 2016-06-15 09:00850PLN / 796PLN
SzczecinWed, 2016-06-15 09:00850PLN / 734PLN
OpoleWed, 2016-06-22 09:00850PLN / 859PLN
Warszawa, ul. Złota 3/11Wed, 2016-06-29 09:00850PLN / 690PLN

Some of our clients