Shell programming in Unix, Linux and OS X

Bibliographic Information

Shell programming in Unix, Linux and OS X

Stephen G. Kochan, Patrick Wood

(Developer's library)

Addison-Wesley, c2017

4th ed

Other Title

Shell programming : in Unix, Linux and OS X

Available at  / 1 libraries

Search this Book/Journal

Note

Previous edition published as UNIX Shell programming in 2003

Includes bibliographical references and index

Description and Table of Contents

Description

Shell Programming in Unix, Linux and OS X is a thoroughly updated revision of Kochan and Wood's classic Unix Shell Programming tutorial. Following the methodology of the original text, the book focuses on the POSIX standard shell, and teaches you how to develop programs in this useful programming environment, taking full advantage of the underlying power of Unix and Unix-like operating systems. After a quick review of Unix utilities, the book's authors take you step-by-step through the process of building shell scripts, debugging them, and understanding how they work within the shell's environment. All major features of the shell are covered, and the large number of practical examples make it easy for you to build shell scripts for your particular applications. The book also describes the major features of the Korn and Bash shells. Learn how to... Take advantage of the many utilities provided in the Unix system Write powerful shell scripts Use the shell's built-in decision-making and looping constructs Use the shell's powerful quoting mechanisms Make the most of the shell's built-in history and command editing capabilities Use regular expressions with Unix commands Take advantage of the special features of the Korn and Bash shells Identify the major differences between versions of the shell language Customize the way your Unix system responds to you Set up your shell environment Make use of functions Debug scripts Contents at a Glance 1 A Quick Review of the Basics 2 What Is the Shell? 3 Tools of the Trade 4 And Away We Go 5 Can I Quote You on That? 6 Passing Arguments 7 Decisions, Decisions 8 'Round and 'Round She Goes 9 Reading and Printing Data 10 Your Environment 11 More on Parameters 12 Loose Ends 13 Rolo Revisited 14 Interactive and Nonstandard Shell Features A Shell Summary B For More Information

Table of Contents

  • 1 A Quick Review of the Basics Some Basic Commands Displaying the Date and Time: The date Command Finding Out Who's Logged In: The who Command Echoing Characters: The echo Command Working with Files Listing Files: The ls Command Displaying the Contents of a File: The cat Command Counting the Number of Words in a File: The wc Command Command Options Making a Copy of a File: The cp Command Renaming a File: The mv Command Removing a File: The rm Command Working with Directories The Home Directory and Pathnames Displaying Your Working Directory: The pwd Command Changing Directories: The cd Command More on the ls Command Creating a Directory: The mkdir Command Copying a File from One Directory to Another Moving Files Between Directories Linking Files: The ln Command Removing a Directory: The rmdir Command Filename Substitution The Asterisk Matching Single Characters Filename Nuances Spaces in Filenames Other Weird Characters Standard Input/Output, and I/O Redirection Standard Input and Standard Output Output Redirection Input Redirection Pipes Filters Standard Error More on Commands Typing More Than One Command on a Line Sending a Command to the Background The ps Command Command Summary 2 What Is the Shell? The Kernel and the Utilities The Login Shell Typing Commands to the Shell The Shell's Responsibilities Program Execution Variable and Filename Substitution I/O Redirection Hooking up a Pipeline Environment Control Interpreted Programming Language 3 Tools of the Trade Regular Expressions Matching Any Character: The Period (.) Matching the Beginning of the Line: The Caret (^) Matching the End of the Line: The Dollar Sign $ Matching a Character Set: The [...] Construct Matching Zero or More Characters: The Asterisk (*) Matching a Precise Number of Subpatterns: \{...\} Saving Matched Characters: \(...\) cut The -d and -f Options paste The -d Option The -s Option sed The -n Option Deleting Lines tr The -s Option The -d Option grep Regular Expressions and grep The -v Option The -l Option The -n Option sort The -u Option The -r Option The -o Option The -n Option Skipping Fields The -t Option Other Options uniq The -d Option Other Options 4 And Away We Go Command Files Comments Variables Displaying the Values of Variables Undefined Variables Have the Null Value Filename Substitution and Variables The ${variable} Construct Built-in Integer Arithmetic 5 Can I Quote You on That? The Single Quote The Double Quote The Backslash Using the Backslash for Continuing Lines The Backslash Inside Double Quotes Command Substitution The Back Quote The $(...) Construct The expr Command 6 Passing Arguments The $# Variable The $* Variable A Program to Look Up Someone in the Phone Book A Program to Add Someone to the Phone Book A Program to Remove Someone from the Phone Book ${n} The shift Command 7 Decisions, Decisions Exit Status The $? Variable The test Command String Operators An Alternative Format for test Integer Operators File Operators The Logical Negation Operator ! The Logical AND Operator -a Parentheses The Logical OR Operator -o The else Construct The exit Command A Second Look at the rem Program The elif Construct Yet Another Version of rem The case Command Special Pattern-Matching Characters The -x Option for Debugging Programs Back to the case The Null Command : The && and || Constructs 8 'Round and 'Round She Goes The for Command The $@ Variable The for Without the List The while Command The until Command More on Loops Breaking Out of a Loop Skipping the Remaining Commands in a Loop Executing a Loop in the Background I/O Redirection on a Loop Piping Data into and out of a Loop Typing a Loop on One Line The getopts Command 9 Reading and Printing Data The read Command A Program to Copy Files Special echo Escape Characters An Improved Version of mycp A Final Version of mycp A Menu-Driven Phone Program The $$ Variable and Temporary Files The Exit Status from read The printf Command 10 Your Environment Local Variables Subshells Exported Variables export -p PS1 and PS2 HOME PATH Your Current Directory CDPATH More on Subshells The .Command The exec Command The (...) and { ...
  • } Constructs Another Way to Pass Variables to a Subshell Your .profile File The TERM Variable The TZ Variable 11 More on Parameters Parameter Substitution ${parameter} ${parameter:-value} ${parameter:=value} ${parameter:?value} ${parameter:+value} Pattern Matching Constructs ${#variable} The $0 Variable The set Command The -x Option set with No Arguments Using set to Reassign Positional Parameters The -- Option Other Options to set The IFS Variable The readonly Command The unset Command 12 Loose Ends The eval Command The wait Command The $! Variable The trap Command trap with No Arguments Ignoring Signals Resetting Traps More on I/O <&- and >&- In-line Input Redirection Shell Archives Functions Removing a Function Definition The return Command The type Command 13 Rolo Revisited Data Formatting Considerations rolo add lu display rem change listall Sample Output 14 Interactive and Nonstandard Shell Features Getting the Right Shell The ENV File Command-Line Editing Command History The vi Line Edit Mode Accessing Commands from Your History The emacs Line Edit Mode Accessing Commands from Your History Other Ways to Access Your History The history Command The fc Command The r Command Functions Local Variables Automatically Loaded Functions Integer Arithmetic Integer Types Numbers in Different Bases The alias Command Removing Aliases Arrays Job Control Stopped Jobs and the fg and bg Commands Miscellaneous Features Other Features of the cd Command Tilde Substitution Order of Search Compatibility Summary Appendixes A Shell Summary B For More Information

by "Nielsen BookData"

Related Books: 1-1 of 1

Details

  • NCID
    BB27027814
  • ISBN
    • 9780134496009
  • Country Code
    us
  • Title Language Code
    eng
  • Text Language Code
    eng
  • Place of Publication
    Indianapolis, Indiana
  • Pages/Volumes
    xv, 392 p.
  • Size
    23 cm
  • Classification
  • Parent Bibliography ID
Page Top