Linux Fundamentals

Request info

Linux Fundamentals Training

This Linux Operating System and Bash Shell Programming training course introduces the delegate to the main concepts of the LINUX Operating System. The most commonly used commands are described in detail as are the command line wildcard and redirection facilities. The mechanisms by which a user acquires a login environment are discussed and the main features of the Bash shell are introduced. The course is designed to give delegates practical experience in developing and writing shell scripts.

Course Overview

This Linux Operating System and Bash Shell Programming training course introduces the delegate to the main concepts of the LINUX Operating System. The most commonly used commands are described in detail as are the command line wildcard and redirection facilities. The mechanisms by which a user acquires a login environment are discussed and the main features of the Bash shell are introduced. The course is designed to give delegates practical experience in developing and writing shell scripts. Most of the built-in Bash shell commands are introduced together with the main program control structures.

Course Objectives

To provide the skills needed to work productively in a LINUX environment to develop and customise shell programs.

The delegates will practise: •    Creating, copying, renaming, moving and deleting files and directories •    Using the shell’s redirection and pipe facilities •    Editing text files using the vi editor •    Setting and changing access permissions on files •    Monitoring and controlling their own processes •    Using the basic file and text searching utilities •    Customising their own login environment •    Writing simple scripts to enhance basic command output •    Using the various shell quoting mechanisms appropriately •    Manipulating shell variables and user-defined variables in scripts •    Implementing conditional execution facilities •    Using the shell’s built-in loop constructs where appropriate •    Writing scripts to trap user interrupts •    User defined Functions •    Developing menu-driven shellscripts

Target Audience

There are no formal pre-requisites for the Linux Fundamentals course, although an understanding of and exposure to information technology is advantageous. Programmers, administrators and support personnel who need to understand the LINUX Operating system, existing shellscripts, automate procedures and write their own utilities.

Prerequisites

A basic understanding of IT is required.

Course Contents

DAY 1

Course Introduction Administration and Course Materials Course Structure and Agenda Delegate and Trainer Introductions

Session 1: INTRODUCTION TO THE LINUX OPERATING SYSTEM A brief history of UNIX The UNIX kernel The UNIX file system A login session Getting started navigating the file system The file system structure Directories and files Pathnames Navigating the file system Exercise: Logging on to the system Exercise: Navigating the file system

Session 2: BASIC COMMANDS Command line syntax Basic file handling commands Basic Directory handling commands Filename wildcard characters Exercise: Manipulating files and directories

Session 3: REDIRECTION AND PIPES Input redirection Output redirection Pipes Exercise: Using redirection and pipe facilities

DAY 2

Session 4: INTRODUCTION TO THE vi EDITOR Overview of the vi editor Basic functions Switching to input mode Other useful commands Exercises: Using the vi editor Exercise: Using more advanced vi features

Session 5: SEARCHING AND REPLACING TEXT Replacing text Using the vi editor Using sed for search and replace Searching for text with grep Linking files Exercises: Searching and Replacing Text

Session 6: RECALLING AND EDITING COMMANDS Overview The Bash shell The Korn shell Exercises: Recall and Edit Commands

Session 7: FILE PERMISSIONS AND ACCESS CONTROL Users and user groups File access permissions Changing file attributes Switching users and user groups Linking files Exercise: Setting and access permissions

DAY 3

Session 8: PROCESSES What is a process? Monitoring processes Killing processes Background processes Job Control Grouping commands Exercise: Monitoring and controlling processes

Session 9: MORE BASIC COMMANDS The wc (word count) command The find command The cut command The sort command The finger command Exercise: Using file handling commands

Session 10: THE USER ENVIRONMENT Customising the .profile or .bash_profile Customising the .kshrc or .bashrc Exercise: Setting up an environment

DAY 4

Session 11: UNIX COMMAND REVIEW Basic Unix commands General commands File and directory handling commands Filename generation characters I/O Redirection features Other commands

Session 12: GETTING STARTED What is a shell script? Development guidelines Creating and editing shell scripts Naming and storing shell scripts Executing shell scripts Exercise: Write a simple shell script

Session 13: USING VARIABLES Environment variables Local variables Assigning values to variables Assessing variable values Using quotes Delimiting variable names Echo control sequences Exercise: Add variables to a script

Session 14: INTEGER ARITHMETIC Using the expr command Using the (( )) notation Exercise: Add integer arithmetic to a shell script

Session 15: HANDLING RUN TIME DATA The read command Command line arguments Exercise: Writing a generic shell script Exercise: Writing an interactive shell script

Session 16: CONDITION EXECUTION The if statement The test command Other test notations Default and substitute variables Exit status codes Exercise: Adding validation to previous scripts

DAY 5

Session 17: LOOP CONSTRUCTS The while loop The until loop The for loop The while true and until false loops Loop control commands Exercise: Enhancing the previously written scripts Exercise: Writing a guess-the-number game

Session 18: MULTI-BRANCH DECISIONS The case statement Menu driven applications Exercise: Developing and writing a menu system

Session 19: FUNCTIONS What is a function? Syntax Examples Exercise: Add a function to a script

Session 20: INTERRUPT HANDLING Interrupt signals Trapping interrupts Exercise: Adding traps to the menu script

Session 21: ADDITIONAL FEATURES AND FACILITIES The exec commands The includes notation More about loops Arrays Here Documents Exercise: Create a here script

Duration: 5 Days

Cost: £1595 + VAT

SELECT wp_posts.*, wp_p2p.* FROM wp_posts INNER JOIN wp_postmeta ON ( wp_posts.ID = wp_postmeta.post_id ) INNER JOIN wp_p2p WHERE 1=1 AND ( ( wp_postmeta.meta_key = 'start_date' AND CAST(wp_postmeta.meta_value AS DATE) >= '2024-06-14' ) ) AND ((wp_posts.post_type = 'schedule' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'acf-disabled'))) AND (wp_p2p.p2p_type = 'schedule_to_courses' AND wp_posts.ID = wp_p2p.p2p_from AND wp_p2p.p2p_to IN (SELECT wp_posts.ID FROM wp_posts WHERE 1=1 AND wp_posts.ID IN (5947) AND ((wp_posts.post_type = 'courses' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'acf-disabled'))) ORDER BY wp_posts.post_date DESC )) GROUP BY wp_posts.ID ORDER BY CAST(wp_postmeta.meta_value AS DATE) ASC