SYSTEM COMMANDS: System Commands
System Commands: week-wise syllabus, notes, short notes, and available revision material.
System Commands
DiplomaComplete week-wise syllabus
System Commands · 8 weeks
Week 1: Introduction to GNU/Linux and Command Line
Topics covered
Introduction to GNU/Linux
- Linux operating system
- Basic overview of GNU/Linux architecture
- Linux distributions
- Ubuntu environment
- Setup Linux in Virtual Machine
Command Line Environment
- Terminal and shell
- Command structure
- Options and arguments
- Command execution
- Command history
- Basic shell navigation
Basic Linux Commands
pwd— current directoryls— directory contentscd— directory changemkdir— creating a directoryrmdir— delete empty directorytouch— create/update filecp— copymv— move/renamerm— deletecat,less,head,tail— viewing file contents
Hardware Information
hwinfolshwlscpulsblkfreedf- Battery and memory information
Operating System Information
- OS details
- Kernel version
- Installed software
- Package information
- Version-related commands
Input and Output Redirection
- Standard input (
stdin) - Standard output (
stdout) - Standard error (
stderr) - Output redirection using
> - Append using
>> - Input redirection using
<
- Standard input (
Expected skills: Navigate Linux terminal, run basic commands, check system information and use input/output redirection.
Week 2: Packages, File Types, Permissions and Environment Variables
Topics covered
Package Management
- Package managers
- Repositories
- Package installation
- Package removal
- Package updates
apt updateapt installapt removeapt upgradeapt search
File Types
- Regular files
- Directories
- Symbolic links
- Device files
- Special files
- File identification commands
File Permissions
- Read (
r) - Write (
w) - Execute (
x) - Owner, group and others
- Permission representation
chmodchownchgrp
- Read (
Symbolic and Numeric Permissions
- Symbolic mode, such as
u+x - Numeric mode, such as
755and644 - Permission changes
- Understanding access modes
- Symbolic mode, such as
Environment Variables
- Shell environment
$HOME$USER$PATH$SHELLenvprintenvexport- Setting and using variables
Expected skills: Managing software packages, understanding file permissions, and configuring environment variables.
Week 3: Shell Variables, File System, Processes and Remote Access
Topics covered
Shell Variables
- Defining shell variables
- Reading variable values
- Local and environment variables
- Variable expansion
- Special shell variables
Prompt Strings
- Understanding the shell prompt
- Prompt customization
PS1- Escape sequences in prompts
Links and Inodes
- Hard links
- Symbolic (soft) links
lnln -s- Inode numbers
ls -i- Differences between hard and symbolic links
Linux File System
- Root directory
/ - Important system directories
- Absolute and relative paths
- Exploring the root file system
- Commands such as
tree,findanddu
- Root directory
Shell Shortcuts and Output Slicing
- Command history
- Tab completion
- Keyboard shortcuts
cutsortuniqwctr
Process Management
- Running processes
- Foreground and background processes
pstopjobsbgfgkill- Process IDs (PID)
Remote Access
- Local and remote machines
- SSH basics
- Connecting to a remote machine
- Remote shell access
Expected skills: Handle shell variables, create links, manage processes and access remote systems.
Week 4: Pipes, Regular Expressions, Find, Editors and Bash Basics
Topics covered
Redirection and Logging
- Redirecting output to files
- Append operations
- Redirecting errors
- Logging command output
- Combining input and output redirection
Pipes
- Pipe operator
| - Chaining commands
- Combining output of one command with another
- Multi-command pipelines
- Pipe operator
Regular Expressions
- Literal character matching
- Character classes
- Wildcards and quantifiers
- Anchors
^and$ - Repetition operators
- Grouping and alternatives
- Extended regular expressions
Pattern Matching with
egrep- Searching text using patterns
- Matching multiple patterns
- Extracting specific lines
- Case-insensitive matching
- Counting matching lines
- Inverting matches
File Searching with
find- Searching by file name
- Searching by file type
- Searching by size
- Searching by modification time
- Combining conditions
- Using
-exec
Command-Line Editors
nanovi/vimemacs- Insert and command modes
- Editing, saving and exiting
- Basic editor configuration
Introduction to Bash Scripts
- Shebang (
#!/bin/bash) - Creating a script
- Making a script executable
- Running a script
- Basic command sequences
- Shebang (
Expected skills: Creating command workflows with pipes and redirection, performing text searches with regular expressions, and writing basic Bash scripts.
Week 5: Shell Scripting, Conditions, Loops and Scheduling
Topics covered
How Shell Scripts Work
- Shell interpreter
- Script execution
- Executable permissions
- Running scripts through Bash
- Exit status
Variables in Scripts
- Variable declaration
- Variable expansion
- Quoting
- Command substitution
- Arithmetic expansion
Command-Line Arguments
$0$1,$2, and other positional parameters$#$@$*- Passing arguments to scripts
- Creating reusable commands
Conditional Statements
ifelifelsefi- Numeric comparisons
- String comparisons
- File tests
- Logical operators
Loops
forwhileuntilbreakcontinue- Iterating over files and command output
Functions
- Function definition
- Function calls
- Parameters
- Return status
- Reusing code
Task Scheduling
- Startup tasks
- Periodic tasks
- Recurring jobs
croncrontab- Scheduling syntax
- Basic task automation
Expected skills: Creating automated programs using variables, arguments, conditions, loops and functions in shell scripts.
Week 6: AWK and SED for Text Processing
Topics covered
Introduction to AWK
- AWK as a text-processing language
- Records and fields
- Field separators
- Input files
- Basic AWK syntax
awk '{print $1}'
AWK for Data Processing
- Selecting specific columns
- Filtering records
- Conditional processing
- Field-based operations
- Computing sums, averages and counts
- Processing CSV-like data
AWK Programming
- Variables
- Arithmetic expressions
- Conditions
- Loops
- Built-in functions
BEGINandENDblocks- Associative arrays
Regular Expressions in AWK
- Pattern-based filtering
- Matching fields
- Combining patterns and conditions
- Extracting relevant records
Introduction to SED
- Stream editor
- Line-by-line processing
- Substitution command
s - Search and replace
- Global replacement
- Address-based editing
Advanced SED Substitution
- Regular expressions in SED
- Capture groups
- Backreferences
- Placeholders
- Deleting and printing selected lines
- In-place editing
Expected skills: Analyzing structured text files with AWK and performing automated text replacement and transformation with SED.
Week 7: Make, File Packaging and Networking
Topics covered
Introduction to Make
- Purpose of the
makeutility - Makefiles
- Targets
- Dependencies
- Recipes and actions
- Running make commands
- Purpose of the
Build Automation
- Dependency-based execution
- Updating only required targets
- Conditional compilation
- Passing shell variables to Make
- Automating repetitive build tasks
File Compression and Packaging
tarzipunzipgzipgunzipbzip2xz- Creating archives
- Extracting files
- Comparing compression formats
Networking Fundamentals
- Network interfaces
- IP addresses
- IPv4 basics
- Localhost
- Private and public IP addresses
- Intranet concepts
Ports and Services
- Port numbers
- Common services
- Client-server communication
- TCP and UDP basics
- Listening ports
DNS and Domain Names
- Domain names
- DNS resolution
- Name-to-IP mapping
- DNS lookup commands
Network Diagnostics
pingipssnetstatcurltraceroutenslookup/dig
Log Analysis
- Reading log files
- Searching errors
- Combining commands for log analysis
- Writing small shell-based analysis workflows
Expected skills: Automate build processes with Makefiles, manage compressed archives, and diagnose connectivity with common networking commands.
Week 8: RAID, Git and Collaborative Development
Topics covered
RAID
- Introduction to RAID
- Data redundancy
- Handling hardware failures
- RAID levels and their basic concepts
- Reliability and storage availability
Introduction to Version Control
- Version control systems
- Git fundamentals
- Local and remote repositories
- Git workflow
- Tracking changes
Git Commands
git initgit clonegit statusgit addgit commitgit loggit diffgit pushgit pullgit fetch
Branching and Merging
- Creating branches
- Switching branches
- Merging branches
- Resolving merge conflicts
- Managing local and remote changes
GitHub Collaboration
- Forking repositories
- Pull requests
- Creating and reviewing pull requests
- Personal access tokens
- Issues and issue resolution
- Public repository workflows
- Private repository collaboration
- Approval workflows
- Team-based development
Expected skills: Manage projects through Git and GitHub, use branches and pull requests, and develop code collaboratively with the team.
Quick revision map
System Commands topic distribution
Week 1: Introduction to GNU/Linux and Command Line
1 weekGNU/Linux, Command Line Environment, Basic Linux Commands, Hardware Information, Operating System Information, Input and Output Redirection
Week 2: Packages, File Types, Permissions and Environment Variables
1 weekPackage Management, File Types, File Permissions, Symbolic and Numeric Permissions, Environment Variables
Week 3: Shell Variables, File System, Processes and Remote Access
1 weekShell Variables, Prompt Strings, Links and Inodes, Linux File System, Shell Shortcuts and Output Slicing, Process Management, Remote Access
Week 4: Pipes, Regular Expressions, Find, Editors and Bash Basics
1 weekRedirection and Logging, Pipes, Regular Expressions, Pattern Matching with `egrep`, File Searching with `find`, Command-Line Editors, Bash Scripts
Week 5: Shell Scripting, Conditions, Loops and Scheduling
1 weekHow Shell Scripts Work, Variables in Scripts, Command-Line Arguments, Conditional Statements, Loops, Functions, Task Scheduling
Week 6: AWK and SED for Text Processing
1 weekAWK, AWK for Data Processing, AWK Programming, Regular Expressions in AWK, SED, Advanced SED Substitution
Week 7: Make, File Packaging and Networking
1 weekMake, Build Automation, File Compression and Packaging, Networking Fundamentals, Ports and Services, DNS and Domain Names, Network Diagnostics, Log Analysis
Week 8: RAID, Git and Collaborative Development
1 weekRAID, Version Control, Git Commands, Branching and Merging, GitHub Collaboration
For quizzes, assignments and exams, follow the current term's course portal and official assessment announcements.
Practise syntax and output tracing for grep/egrep, regular expressions, find, Bash, AWK and SED, especially in Weeks 4–6.
IIT Madras official course page