Learning The Bash Shell, 3/e (Paperback)

Cameron Newham

  • 出版商: O'Reilly
  • 出版日期: 2005-04-19
  • 定價: $1,520
  • 售價: 9.5$1,444
  • 貴賓價: 9.0$1,368
  • 語言: 英文
  • 頁數: 354
  • 裝訂: Paperback
  • ISBN: 0596009658
  • ISBN-13: 9780596009656
  • 相關分類: Command Line
  • 立即出貨 (庫存 < 3)




O'Reilly's bestselling book on Linux's bash shell is at it again. Now that Linux is an established player both as a server and on the desktop Learning the bash Shell has been updated and refreshed to account for all the latest changes. Indeed, this third edition serves as the most valuable guide yet to the bash shell.

As any good programmer knows, the first thing users of the Linux operating system come face to face with is the shell the UNIX term for a user interface to the system. In other words, it's what lets you communicate with the computer via the keyboard and display. Mastering the bash shell might sound fairly simple but it isn't. In truth, there are many complexities that need careful explanation, which is just what Learning the bash Shell provides.

If you are new to shell programming, the book provides an excellent introduction, covering everything from the most basic to the most advanced features. And if you've been writing shell scripts for years, it offers a great way to find out what the new shell offers. Learning the bash Shell is also full of practical examples of shell commands and programs that will make everyday use of Linux that much easier. With this book, programmers will learn:

  • How to install bash as your login shell
  • The basics of interactive shell use, including UNIX file and directory structures, standard I/O, and background jobs
  • Command line editing, history substitution, and key bindings
  • How to customize your shell environment without programming
  • The nuts and bolts of basic shell programming, flow control structures, command-line options and typed variables
  • Process handling, from job control to processes, coroutines and subshells
  • Debugging techniques, such as trace and verbose modes
  • Techniques for implementing system-wide shell customization and features related to system security


Table of Contents:


1. bash Basics

     What Is a Shell?

     Scope of This Book

     History of UNIX Shells

     Getting bash

     Interactive Shell Use


     Input and Output

     Background Jobs

     Special Characters and Quoting


2. Command-Line Editing

     Enabling Command-Line Editing

     The History List

     emacs Editing Mode

     vi Editing Mode

     The fc Command

     History Expansion


     Keyboard Habits

3. Customizing Your Environment

     The .bash_profile, .bash_logout, and .bashrc Files



     Shell Variables

     Customization and Subprocesses

     Customization Hints

4. Basic Shell Programming

     Shell Scripts and Functions

     Shell Variables

     String Operators

     Command Substitution

     Advanced Examples: pushd and popd

5. Flow Control





     while and until

6. Command-Line Options and Typed Variables

     Command-Line Options

     Typed Variables

     Integer Variables and Arithmetic


7. Input/Output and Command-Line Processing

     I/O Redirectors

     String I/O

     Command-Line Processing

8. Process Handling

     Process IDs and Job Numbers

     Job Control





     Process Substitution

9. Debugging Shell Programs

     Basic Debugging Aids

     A bash Debugger

10. bash Administration

     Installing bash as the Standard Shell

     Environment Customization

     System Security Features

11. Shell Scripting

     What's That Do?

     Starting Up

     Potential Problems

     Don't Use bash

12. bash for Your System

     Obtaining bash

      Unpacking the Archive

     What's in the Archive

     Who Do I Turn to?

A. Related Shells

     The Bourne Shell

     The IEEE 1003.2 POSIX Shell Standard

     The Korn Shell



     Shell Clones and Unix-like Platforms

B. Reference Lists


     Prompt String Customizations

     Built-In Commands and Reserved Words

     Built-In Shell Variables

     Test Operators

     set Options

     shopt Options

     I/O Redirection

     emacs Mode Commands

     vi Control Mode Commands

C. Loadable Built-Ins

D. Programmable Completion