The UNIX™ Shell Programming Language

Rod Manis, Marc H. Meyer

Publisher: SAMS, 1986, 303 pages

ISBN: 0-672-22497-6

Keywords: Programming

Last modified: June 27, 2021, 1:35 a.m.

Welcome to the power of UNIX! With this book, you'll discover why UNIX's hundreds of commands are easier to understand and use than some "simpler" operating systems like CP/M® and PC-DOS. The shell is the command interpreter for the UNIX operatring system. It is also a powerful programming language for quickly building software applications.

You'll learn how UNIX programs work together and how you can create your own UNIX programs without studying to be a programmer. The authors teach UNIX shell programming thrrough examples, with details on all the features of the shell, including:

  • Integrated software and fast prototyping
  • Input/output and string processing
  • Programs to do menus, relational database commands, system utilities, and file update locking, among others
  • The UNIX System V Release 2 shell
  • The Korn shell
  • The C shell
  • Formal grammar, and much more

The UNIX Shell Programming Language is written for readers from a variety of backgrounds. Whether you're a novice at the computer, a devotee of some other operating system, or a seasoned UNIX programmer, you'll find all the information you need to make the power of UNIX work for you.

  1. The Power of UNIX
    1. Introduction
      • What Is UNIX?
      • What Is the Shell?
      • What Is Shell Programming?
      • The Shell Is a Program
      • Bell Shell or C Shell
    2. The Power of UNIX
      • Other Approaches
      • Many Data Formats
      • UNIX Flat ASCII Files
      • UNIX Commands, Pipes, and Filters
      • Astronomical Possibilities
      • Superhigh Level Programming
      • Nonprocedural Programming
      • Same Resistance
      • Speed
      • Memory
    3. Integrated Software and Fast Prototyping
      • Integrated Software
      • UNIX Software
      • Using Flat ASCII Files
      • Open Versus Closed Integration
      • Fast Prototyping
      • Hardware Analogy
      • The UNIX Approach
      • Integratable Versus Integrated Software: More UNIX Power
    4. Getting Started
      • Logging In
      • Logging Out
      • Terminal Keyboard
      • Commands
      • Options
    5. UNIX Documentation
      • UNIX User's Manual
      • Tutorial
    6. The vi Editor
      • Why vi Text Editor
      • Getting In
      • Getting Out
      • Setting Up for vi
      • Modes
      • Entering, Editing, and Saving Text
      • Executing Programs from vi
      • vi As a Full Screen Command Editor
  2. Operational Shell Commands
    1. Shell Programming and Debugging
      • Input a Program
      • vi Editing
      • Old ed Editing
      • cat Editing
      • Checking the Program File
      • Make It Executable
      • Run the Command
      • Debugging Shell Programs
      • Experiment
    2. UNIX Files
      • Directories
      • Hierarchy
      • Path Names
      • Devices Are Files
    3. Standard I/O and Redirection
      • Stream of Characters
      • File Redirection
    4. Pipes and Filters
      • Long Pipes
      • Pipes Down the Page
      • The freq Command
      • How Pipes Work
      • System Calls
      • Automation
    5. UNIX Commands
      • The awk Command
      • The bc Command
      • The cat Command
      • The date Command
      • The dd (Data Dump) Command
      • The diff Command
      • The echo Command
      • The grep Command
      • The od (Octal Dump) Command
      • The pr Command
      • The rm Command
      • The sed (Stream Editor) Command
      • The sort Command
      • The tail Command
      • The tee Command
      • The wc (Word Count) Command
    6. The Shell Monster
      • Filename Substitution
      • ? Any One Character
      • [ ] List of Characters
      • [ — ] Range of Characters
      • Quoting and Rewriting
      • Window
      • Multipass Multibackslash
      • Positional Parameters
      • The shift Command
    7. Shell Variables
      • Quoting Variable Assignments
      • Using Shell Variables $VAR
      • Standard Variables
      • The set Command
      • The env Command
      • The export Command
      • The .profile File
      • Variables Set by the Shell
      • Default Parameters
      • Command Substitution
      • Keyword Parameters
    8. Control Flow
      • if list then list elif list else list fi
      • while list do list done
      • case word in pattern) list;;… esac
      • Example
    9. Shell Built-in Commands
      • Comment Commands
    10. More Shell Meta Characters
      • Background or Batch Processing
      • Subshells
    11. Shell Options, Inputting Data, and Parsing
      • Command Line Only
      • Command Line and set Command Options
      • Inputting Data
      • String Conversion
      • String Parsing
      • Parsing with the sed Command
      • Parsing with a Call to Another Program
      • Parsing with for and case
      • Parsing with lex and yacc
  3. Shell Programs
    1. Administration
      • Menu
      • bin and Path
      • Permissions and Groups
      • $HOME/.profile
      • Controlling the User
      • Man Documentation
    2. Recursion
      • Directory Tree Search
      • Towers of Hanoi
    3. Style
      • Sample Program
      • SCCS Information
      • Usage
      • Exit Status Codes
      • The TMP File
      • The trap Command
      • test Arguments
      • Comments
      • System V Interface Definition
    4. Handling Arguments
      • $# Argument Count for Required Arguments
      • $1, £2, … Positional Arguments
      • $* Argument List
      • Options
      • Unset Arguments
      • Last Argument
    5. Relational Database Example
      • Tables
      • Piping
      • The join Command
      • Compute and Validate
      • Terminology
    6. Screen Entry Forms
      • termcap and termput
      • Clear Screen
      • Cursor Movement
      • Output with echo and Input with read
    7. Portability and Speed
      • Bell vs. Berkeley
      • UNIX Programs of Major UNIX Systems
      • Programmers Time Vs. Computer Time
  4. UNIX Shells
    1. History of UNIX Shells
    2. Grammar
    3. UNIX System V Shell
      • The Importance of System V
      • The Bourne Shell
    4. The Korn Shell
      • New Symbols and Commands
    5. The C Shell
      • The csh Command
      • Berkeley Enhancements
  5. User Manual

Reviews

The UNIX™ Shell Programming Language

Reviewed by Roland Buresund

Decent ****** (6 out of 10)

Last modified: May 21, 2007, 3:18 a.m.

A good complement to Kochan & Wood's book.

Comments

There are currently no comments

New Comment

required

required (not published)

optional

required

captcha

required