Learning the bash Shell
Cameron Newham,Bill
This refreshed edition serves as the most valuable guide yet to the bash shell. It's full of practical examples of shell commands and programs guaranteed to make everyday use of Linux that much easier. Includes information on key bindings, command line editing and processing, integrated programming features, signal handling, and much more!
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