Linux for Programmers
This course is intended to teach those familiar with Microsoft Windows or other platforms the basics of the Unix operating system. The course teaches operating system fundamentals to enable a thorough understanding of the system, with the most emphasis on hands-on laboratory work.

PREREQUISITES: No previous Unix experience is necessary, but familiarity with a programming language is recommended

DURATION: 3 days

PRICE: $1425

UNIX Fundamentals

  • A brief history of UNIX and Linux
  • UNIX structure: shells, applications, and the kernel
  • A brief history of shells
  • Logging in
  • Basic command structure
  • Getting help in UNIX with man and info
  • Navigating the filesystem

Managing Files

  • File types in UNIX
  • File properties
  • Groups and users
  • File access modes
  • Changing file access modes and setting a default mode
  • Working with directories
  • Symbolic links
  • Wildcards and shell globbing
  • Manipulating plain files
  • Viewing files
  • Some file utilities: uniq, sort, cut, paste, and wc

Text Editing

  • Available editors
  • Starting vi
  • Managing modes in vi
  • Command mode basics
  • Invoking insert mode
  • Navigation commands
  • Searching in vi
  • Issuing ex commands
  • Additional vi commands

Customizing the Shell

  • Shell variables
  • How strings are interpreted
  • Double quotes and single quotes
  • Advanced referencing
  • Built-in shell variables
  • Using and setting environment variables
  • Defining aliases
  • Setting options
  • Command line editing and history
  • Filename completion

Standard I/O

  • The standard streams: in, out, and err
  • Simple redirection
  • Using pipes
  • Additional redirection options
  • Overwriting and the noclobber option
  • Here documents
  • The standard error stream
  • Complex command forms
  • Splitting a stream with tee
  • Advanced redirections
  • Reading input

Text Processing

  • Pattern matching and regular expressions
  • Metacharacters
  • Search patterns
  • Using grep
  • When to use fgrep and egrep
  • Replacement patterns
  • Overview of sed
  • sed command syntax
  • Some useful sed commands and examples
  • Overview of awk
  • Built-in awk variables
  • Some useful awk commands and examples

UNIX Processes

  • Process ids and job numbers
  • Background execution
  • Basic job control
  • Suspending processes
  • Sending signals
  • Handling and ignoring signals
  • Coroutines
  • Process synchronization
  • Two-way pipes and asynchronous communication
  • Sub-shells
 

Register Now

This page is printer friendly.