UNIX operating system

The UNIX training course introduces the delegate to the main concepts of the UNIX Operating System. The most commonly used unix commands and utilities 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 Korn/Posix/Bash Shells are introduced.

  • An understanding of and exposure to information technology is advantageous
  • Experience of IT and an understanding of operating systems are required

UNIX workshop is suitable for anyone who needs to understand and use the UNIX Operating System.

By attending UNIX workshop, Participants will learn:

  • 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
  • Customizing their own login environment

COURSE AGENDA

  • Discuss features and benefits
  • Download and install Awk & Sed for Win32
  • Transfer Linux files to Windows
  • Test various parsing and substitution on Linux files
  • Evaluate results
  • Enumerate poorly-named files for transformation
  • Identify key replacement strings for regular expressions match
  • Define and apply regular expressions for transformations
  • Transform prefixes and suffixes
  • Evaluate results
  • Generate sample data set
  • Define regular expressions patterns for transformation
  • Transform sample data
  • Evaluate results
  • Discuss features and applications
  • Compare and contrast ‘print’ and ‘printf’ output formatting
  • Discuss ‘printf’ supported data types
  • Evaluate ‘printf’ application in reporting
  • Discuss features and applications
  • Parse and cleanup HTML and PHP files with Sed & Awk
  • Replace values in system file with Awk
  • Evaluate results
  • Discuss features and applications
  • Enumerate and discuss key Awk system variables
  • Increment counters based on matched patterns using Awk
  • Explain variable concatenation
  • Explore arrays (lists of values)
  • Create arrays using the split function
  • Discuss features and applications
  • Explore Boolean and Relational operators
  • Discuss looping strategies
  • Evaluate conditional testing using system variables
  • Evaluate results
  • Discuss features and benefits
  • Define and evaluate multiple input field separators with files with mixed delimiters
  • Normalize output by controlling the Output Field Separator (OFS)
  • Extract records from system file and evaluated
  • Account for number of processed and matched records in END block
  • Discuss features and benefits
  • Explain general usage syntax
  • Print full lines from input
  • Print desired fields from input
  • Match patterns using RegExes
  • Control the input field | column delimiters
  • Save output
  • Discuss features and benefits
  • Explain structure of Awk scripts
  • Implement BEGIN and END blocks
  • Parse system files using Awk script
  • Discuss features and applications
  • Explain general usage syntax
  • Create script to remove blank lines from input stream
  • Create script to make general substitutions
  • Perform case-insensitive replacements via Sed script
  • Insert strings into desried location in the input stream via Sed script
  • Strip trailing numeric values from input stream via Sed script
  • Apply changes to multiple files
  • Save scripts for reuse
  • Sed – Search & Replace
  • Discuss Left-hand and Righ-hand side (LHS | RHS) sections in search & replace
  • actions
  • Acquire input from: STDIN, PIPES and Files and transform according to criteria
  • Backup and overwrite source files using Sed one-liners
  • Perform substitutions based on matched addresses
  • Reuse matched strings in replacement output
  • Perform text substitutions across multiple files
  • Perform multiple replacements in one command
  • Apply substitutions globally across all matches
  • Discuss features and applications
  • Explain general usage syntax
  • Print specific lines from input
  • Delete specific lines from input
  • Match streams using RegExes
  • Search for ranges of text using line numbers and text ranges
  • Save transformed output
  • Descruotuib
  • To document and to comment
  • Installation and Configuration
  • Doxygen comments
  • A comment example
  • HTML in documentation
  • Memcheck
  • Callgrind
  • kcachegrind
  • hellgrind massif
  • Gcov Intro
  • Invoking Gcov
  • Gcov and Optimization
  • GCov Data Files
  • Cross Profiling
  • Getting Valgrind
  • Finding Memory Leaks With Valgrind
  • Finding Invalid Pointer Use With Valgrind
  • Detecting The Use Of Uninitialized Variables
  • What else will Valgrind Find
  • What Is My Program Doing?
  • Source Level Debugging
  • Invoking gdb
  • Getting Started with gdb
  • Examining and Changing Memory
  • Debuginfo Libraries
  • Using gdb with a Running Process
  • Using gdb to Autopsy a Crash
  • Debugging Libraries – ElectricFence
  • Debugging with valgrind
  • Profiling for Performance
  • Using gvd
  • gvd options
  • Using ddd
  • ddd options
  • Handy Flags
  • Debugging
  • Warnings
  • Defining Preprocessor Symbols
  • Seeing Preprocessor Output
  • Seeing the Generated Assembly Code
  • Preprocessor Hints and Tricks
  • Predefined macros
  • Macro hygiene
  • Multiline macros
  • Variable Arguments
  • Varargs Gotchas
  • Compiler Optimization
  • GCC Extensions
  • gcc 4.0
  • long double
  • Testing the Compiler Version
  • New Optimizer
  • Vectorization
  • Even More Compiler Flags
  • 64-Bit Computing
  • The 64-bit Programming Model
  • Universally Fat Binaries
  • Fat Binaries from the Command Line
  • Shells
  • Identifying the Shell
  • Changing the Shell
  • sh: Configuration Files
  • sh: Script Execution
  • sh: Prompts
  • bash: Bourne Again Shell
  • bash: Configuration Files
  • bash: Command Line History
  • bash: Command Editing
  • bash: Command Completion
  • bash: shortcuts
  • bash: prompt
  • while loop
  • for loop
  • if test statement
  • case statement
  • Processing strings in shell scripts
  • processing arrays in shell scripts
  • shell functions
  • Text Editing
  • Pico/GNU Nano
  • Pico/Nano Interface and Shortcuts
  • Vi and Vim
  • Basic Vi
  • Learning Vi
  • Intermediate Vi
  • Emacs
  • The Emacs Interface
  • Basic Emacs
  • More Emacs Commands
  • Regular Expressions Overview
  • Regular Expressions
  • RE Character Classes
  • RE Quantifiers
  • RE Parenthesis
  • Role of Command Shell
  • Communication Channels
  • File Redirection
  • Piping Commands Together
  • Filename Matching
  • File comparison commands
  • File Globbing and Wildcard Patterns
  • Brace Expansion
  • Shell/Environment Variables
  • Key Environment Variables
  • General Quoting Rules
  • Nesting Commands
  • Multiple and Multi-line Commands
  • Searching Inside Files
  • The Streaming Editor
  • Text Processing with awk
  • Replacing Text Characters
  • Text Sorting
  • Duplicate Removal Utility
  • Extracting Columns of Text
  • Merging Multiple Files
  • Directory Manipulation
  • File manipulation commands – cat, cp, mv, rm, ln, md, rd, cd, du, diff, ls, tr, grep, egrep, fgrep, cut, paste, split, pwd, echo etc.
  • Deleting and Creating Files
  • Physical Unix File Structure
  • Filesystem Links
  • File Extensions and Content
  • Displaying Files
  • Previewing Files
  • Displaying Binary Files
  • Searching the Filesystem
  • Alternate Search Method
  • Producing File Statistics
  • Foreward
  • The Root Directory
  • /bin
  • /boot
  • /dev
  • /etc
  • /home
  • /initrd
  • /lib
  • /lost+found
  • /media
  • /mnt
  • Mounting and unmounting
  • /opt
  • /proc
  • /root
  • /sbin
  • /usr
  • /var
  • /srv
  • /tmp
  • Filesystem Support
  • UNIX/Linux Filesystem Features
  • Filesystem Hierarchy Standard
  • Navigating the Filesystem
  • Displaying Directory Contents
  • Determining Disk Usage
  • Disk Usage with Quotas
  • File Ownership
  • Default Group Ownership
  • File and Directory Permissions
  • File Creation Permissions
  • Changing File Permissions
  • SUID and SGID on files
  • SGID and Sticky Bit on Directories
  • User Private Group Scheme
  • UNIX Origins, Design Principles, Time-line
  • UNIX Time-line
  • FSF and GNU
  • GPL – General Public License
  • The UNIX Kernel
  • UNIX Features
  • Popular Uses of UNIX
  • What is a Distribution?
  • Components of Distributions
  • Standardization
  • Red Hat
  • Slackware
  • SUSE Linux Products
  • Debian
  • Ubuntu
  • Multi-User Concepts
  • got root?
  • Logging In using UNIX login screen
  • telnet
  • rsh
  • rlogin
  • putty
  • Switching User Contexts
  • Gathering Login Session and System Info
  • Help from Commands and Documentation
  • Getting Help with man & info
  • $MANPATH, whatis and apropos
  • The X Window System
  • Starting X
  • Display Manager Concepts
  • Customizing X Sessions
  • Window Manager Concepts
  • Desktop Environments
  • KDE
  • KDE Control Center
  • KDE Panel
  • KDE Applications
  • GNOME
  • GNOME Preferences
  • GNOME Panel
  • GNOME Applications
  • Configure a Samba server as a file server
  • Install and setup a basic samba server
  • Understand the structure and elements of the samba configuration file
  • Configure Samba as file server for windows clients
  • Use the Samba tools to mount samba shares on a UNIX machine
  • Apply security to files shared with Samba
  • Learn about more possibilities with Samba
  • Using scp
  • Various scp options
  • Difference between scp and rcp
  • Using sftp
  • Various sftp options
  • Retrieving files
  • Sending files
  • Differences between sftp and scp