Linux and Shell Programming

Paper Code: 
MCA 422
Credits: 
04
Periods/week: 
04
Max. Marks: 
100.00
Objective: 
  • To provide the students with the skills necessary for working with UNIX/LINUX operating system environment.
  • To help them understand the various utilities for file management, process management, system administration and network management.
  • To provide the students with the skills necessary for developing shell script and programming.

 

12.00
Unit I: 
Introduction to UNIX/LINUX Operating System

Features of UNIX/LINUX operating system, Structure: Kernel and Shell, Basic commands, Accessing help options, Filenames and using wild cards, Types of files, File systems: four block of file systems, directory hierarchy, Operations and utilities for directory and files.

 

10.00
Unit II: 
User & Group and File Access Permissions

Managing user accounts-adding & deleting users, changing permissions and ownerships, Creating and managing groups, modifying group attributes, Temporary disable user’s accounts, Ownership of files, Security levels and shell customization: Environment variables, File permissions: File attribute, permissions and changing file permissions, User masks.

 

14.00
Unit III: 
Introduction to Shell

UNIX shell and its types, Features of shell: standard streams, I/O redirection, pipes, Vi editor: Introduction to text processing, command& edit mode invoking vi, deleting & inserting line, deleting &replacing character, searching for strings, yanking, Command execution: sequenced, grouped, chained and conditional command, exit status of command, Filters: Introduction, using pipe with filters, Concatenating files, Display beginning and end of files, Splitting files, cut, paste, sorting and translating characters, Files with duplicate lines, counting character, words and lines and comparing files, Simple filter commands – pr, head, tail, cut, paste, sort, uniq, tr,  Regular expressions: atoms and operators, grep: working of grep, sed.

 

12.00
Unit IV: 
Shell Programming

Basic of shell programming, meta characters, shell variable: predefined variables and user defined variable, storing value in variable and accessing it, unsetting variables, storing filenames, content and command in variable, Input: reading word by word, line by line and from file, Expression, Decisions and repetition, Special parameters and variables, shell programming in bash, read command, conditional and looping statements, case statements, changing positional parameters and argument validation, string manipulation.

 

ESSENTIAL READINGS: 
  • Sumitabha Das, “UNIX – Concepts & Applications”, Tata McGraw Hill Publications, 4th edition, 2006.
  • Graham Glass & King Ables, “Linux for programmers and users”, Pearson Education India, 3rd edition, 2006.
  • Sander Van Vugt, “Red Hat Enterprise Linux 6 Administration: Real World Skills for Red Hat Administrators”, Wiley, 1st edition, 2013.
REFERENCES: 
  • Forouzan B. A., Gilberg R. R., “UNIX and Shell Programming”, TMH, 2nd edition, 2008.
  • Saurabh K., “UNIX Programming: The First Drive”, Willey India, 1st edition, 2008.
  • Richard Petersen, “Linux: The Complete Reference”, Sixth Edition, TMH, 6th edition, November 2007.
  • Terry Collings, “Red Hat Linux Networking and System Administration”, Wiley India Private Limited, 3rd edition, 22 October 2005.
Academic Year: