Course Content
WHAT IS UNIX?
- 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
- 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
- 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
Introduction to Samba,Scp,sftp
- 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
THE UNIX FILESYSTEM
- 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 Filesystem Hierarchy
- 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
MANIPULATING 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
SHELL BASICS
- 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
TEXT PROCESSING
- 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
REGULAR EXPRESSIONS
- Regular Expressions Overview
- Regular Expressions
- RE Character Classes
- RE Quantifiers
- RE Parenthesis
TEXT EDITING
- 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
COMMAND SHELLS
- 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
Compiler Options and Linker 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
Debugging
- 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
Testing
- Gcov Intro
- Invoking Gcov
- Gcov and Optimization
- GCov Data Files
- Cross Profiling
Valgrind
- Getting Valgrind
- Finding Memory Leaks With Valgrind
- Finding Invalid Pointer Use With Valgrind
- Detecting The Use Of Uninitialized Variables
- What else will Valgrind Find
Using other tools like:
- Memcheck
- Callgrind
- kcachegrind
- hellgrind massif
Documentation using Doxygen
- Descruotuib
- To document and to comment
- Installation and Configuration
- Doxygen comments
- A comment example
- HTML in documentation
Intro to Sed - Stream Editor
- 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
Sed - Search & Replace
- 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
Sed - Scripts
- 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
Intro to Awk - Field Processor & Reporter
- 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
Awk - Scripts
- Discuss features and benefits
- Explain structure of Awk scripts
- Implement BEGIN and END blocks
- Parse system files using Awk script
Awk - Variables
- 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
Awk - Operators
- Discuss features and applications
- Explore Boolean and Relational operators
- Discuss looping strategies
- Evaluate conditional testing using system variables
- Evaluate results
Awk - Process Records
- 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
Awk - Print Formatting
- Discuss features and applications
- Compare and contrast 'print' and 'printf' output formatting
- Discuss 'printf' supported data types
- Evaluate 'printf' application in reporting
Awk & Sed - Various Examples
- Discuss features and applications
- Parse and cleanup HTML and PHP files with Sed & Awk
- Replace values in system file with Awk
- Evaluate results
- Awk & Sed - Win32
- 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
Sed - File Name Transformations - Batch
- 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
Awk - E-Mail Address Parsing
- Generate sample data set
- Define regular expressions patterns for transformation
- Transform sample data
- Evaluate results
Tomcat and Apache in Linux - Configuration, Startup and shutdown
Introduction to PHP
Configuring and connnecting to MYSQL Database