Focus Training Services’ UNIX and Linux Operating System Fundamentals course begins with a brief history and overview of both UNIX and Linux, and then proceeds to teach you the skills required for working on a server running either operating system.
Hands-on lab exercises are used to reinforce key concepts, and are completed by logging in on a real server in our Internet Lab from your work or home computer.
|Course Name||UNIX Shell Scripting Training|
|Demo Classes||Every Weekends & Weekdays|
|Venue||Focus Training Services|
|Address||Madhavi Apartment 2102/5 Ground Floor, Near Kala Prasad Mangal Karyalaya Behind S P College, Vijaya Nagar Colony, Sadashiv Peth, Pune – 411030|
|Official URL||UNIX SHELL Scripting Training Syllabus & Informations|
|Trainer||Mr. Shekhar Tulshibagwale(Founder & CEO, CTO @ Focus Training Services)|
|Course Duration||15 – 18 Hours|
|Class Availability||Week Days (90 mins) & Week Ends (120 mins)|
- A Brief History of the UNIX and Linux Operating Systems
- Operating System Concepts
- Getting Connected, Logging In, and Logging Out
- Operating System Commands
- Working with Directories
- Working with Files
- I/O Redirection, Pipes, and Filters
- Getting Help
- Processes and Jobs
- The Shell – A Closer Look
- Introduction to the vi Text Editor
- Introduction to Shell Scripting/Programming
- Tools and Utilities
- Interacting with Other Users
A Brief History of the UNIX and Linux Operating Systems
Understanding the origin and evolution of a particular technology often helps when learning how to use it. Like many new technologies, the development of these two operating systems did not start as a conscious effort to develop a commercial product. This makes their current level of popularity and utilization even more remarkable.
– The UNIX Operating System
– The Linux Operating System
Operating System Concepts
Most operating systems have certain traits that differentiate them from each other. The UNIX and Linux operating systems are no exceptions to this fact. Having a general understanding of a few of the design traits for these operating systems will assist you in using them more effectively.
– The UNIX and Linux operating system environment
– The File system
– The superuser (root) account
Getting Connected, Logging in, and Logging out
Before using a computer system, you need to connect and in most cases be authenticated as a valid system user. Methods for connecting and being authenticated are dependent on the task to be performed. For this course, all interaction between you and the lab system will be interactive and will require you to be authenticated prior to using the system.
– Using SSH to connect
– Username and password
– The login and password prompts
– Password considerations
– Remember to logout
Operating System Commands
A computer’s operating system is a layer of software that bridges the gap between a computer ‘s user and the computer’s hardware. The user instructs the operating system of what he or she would like to do at a high-level, and then the operating system will attempt to complete the task at a low-level. To effectively instruct an operating system of what you would like it to do, you need to become intimately familiar with the commands that are understood by the operating system and how to use these commands correctly.
– Command options and arguments
– Case sensitivity
– Some useful commands
– Running multiple commands on a single line
– The recursive command option
– Command history
– Command aliases
– Locating commands
Working with Directories
A directory is a container used for storing and tracking the location of files and other directories on systems running the UNIX or Linux operating system. If you are familiar with windows-based PC (personal computer) operating systems, a directory serves the same purpose as a folder.
Directories are useful for organizing your files based on what the files are used for. You may have all of your executable program files in one directory, files for a specific project in another, and graphical images in another.
– Your home directory
– Your working (current) directory
– Special characters
– Changing directories
– Creating a directory
– Removing (deleting) a directory
Working with Files
It is fairly safe to say that everything in the UNIX or Linux operating system is a file or is represented by a file. Because of this, you will need to understand the different types of files found on a system, and how to work with each type.
– File types
– Listing files located outside of your home directory
– Special characters (metacharacters)
– Hidden files
– Copying a file
– Moving/renaming a file
– Remove (delete) a file
– Displaying a file’s contents
– Comparing the contents of two files
– Creating hard and symbolic links
– Finding files
– Counting characters, words and lines
– File access mode (permissions)
– Modifying a file’s access mode
– File owners and groups
I/O Redirection, Pipes, and Filters
This module will discuss various methods for manipulating data and controlling the flow of data. The data flow paths discussed is the path to and from files, and the path between operating system commands.
– Standard file descriptors
– I/O Redirection – redirection of standard output
– I/O Redirection – redirection of standard input
– I/O Redirection – redirection of standard error
– The pipe mechanism
– Filters – cut
– Filters – paste
– Filters – sort
– Filters – grep
– Filters – awk
– Filters – tee
If you need help while working on a system running the UNIX or Linux operating system, there is detailed information available on the system to assist you if you have no books or manuals close by.
– System manual (man pages)
– The whatis command
Processes and Jobs
Since the UNIX and Linux operating systems are multiuser and multitasking operating systems, there are a large number of system activities for the operating system to continuously track and manage. Processes are used by the operating system to effectively and efficiently handle this seemingly complicated task.
Because of the multitasking capabilities of these operating systems, each user also needs a method for tracking and managing the simultaneous tasks he or she is working on. Jobs and job control provide this method for the user.
– What is a process?
– Process monitoring and management – The ps command
– The kill command
– Process priorities
– Jobs and job control
The Shell – A Closer Look
By now you should have a basic understanding of what the shell is and what purpose it serves. A deeper understanding of shells is needed to effectively work with the UNIX or Linux operating system.
– Login and shell initialization files
– Related commands
– What shell am I using?
– Running a different shell
Introduction to the vi Text Editor
Regardless of what you use a UNIX or Linux system for, you will sooner or later want or need to create a new text file, or edit the text in an existing file. In order to accomplish this task you will need to know how to use a text editor. This module will teach you the basics of using the vi (visual) text editor.
The vi editor was selected for this course because it is available on most systems running the UNIX or Linux operating system (it’s also commonly found on computers running other operating systems), it is widely used by UNIX and Linux users, and it is perfect for editing files over remote or low-speed connections. Since vi has a large number of features to support its extensive functionality, this module is designed to introduce you to the basics so that you can start using it immediately.
– Entering vi
– Exiting (quitting) vi
– Saving your work without exiting
– Switching to input mode to add text
– Diagram of vi editor modes
– Cursor movement
Introduction to Shell Scripting/Programming
A shell program, or script, in its simplest form is a collection of UNIX or Linux operating system commands that are executed as a group. Looking at a shell script from a more advanced perspective, it is a complete program written using a shell’s programming language.
Shell scripts are used for executing frequently performed tasks, controlling operating system startup and shutdown, handling system administration duties, and for installing and configuring software products. This brief list shows how a shell script can be used for accomplishing many diverse activities.
Another advantage of a shell script is its portability. A shell script written on a particular version of the UNIX or Linux operating system can often be copied to and ran on other versions of these operating systems.
– Creating a shell script
– Accessing data from a shell script
– Test command
– Conditional/flow control statements
– Loop structures
– Checking return codes
Tools and Utilities
There are many tools and utilities available with the UNIX or Linux operating system that are used for completing a variety of tasks. This module will introduce you to a few of the more commonly used ones.
– The tar utility
– The gzip utility
– FTP (File Transfer Protocol)
– Ping (Packet Internet Groper)
Interacting with Other Users
Sometimes you will need or want to know who else is logged in on the system you are on, and you may also need to communicate with the other users. There are multiple utilities for identifying who else is on the system, and additional utilities for communicating with them. This module will introduce you to these frequently used utilities.
There are no prerequisites for this course, other than a desire to learn the basics of the UNIX and Linux operating systems, which includes UNIX shell scripting.
You will have access to the online course content and Internet Lab system for 8 weeks (24/7). This initial access period can be extended, with no additional fee, if you need more time to complete the course.
Course / Lab Support
Your “Getting Started” email will contain the name and email address of your assigned LiveFire Labs training specialist, who will check in with you shortly after you start the course to find out how things are going and to see if you have any questions. You can also email your training specialist, who is an experienced UNIX technologist, whenever you have questions about the course material or hands-on lab exercises.
Follow the registration steps below if you are ready to start learning the fundamentals of UNIX/Linux, or contact us with any questions you may have. You can optionally check our FAQ for answers to common questions or view our Testimonials page to read what previous students think about our online courses and Internet Lab.