You are previewing Practical UNIX.
O'Reilly logo
Practical UNIX

Book Description

Practical UNIX address the concerns of the beginning to intermediate UNIX user. Practical UNIX teaches what its namesake promises--practical applications and information that you can easily find and use. You can count on this book to provide solid reference information and practical knowledge necessary to master the ever-complex UNIX. Topics covered in Practical UNIX include listing, finding, displaying, and printing files, generating and using file lists, system security, command-line editing, introduction to Emacs, accessing other UNIX systems on the network and Internet, writing Bourne Shell Scripts, and writing Perl Programs.

Table of Contents

  1. Copyright
  2. About the Author
  3. Acknowledgments
  4. Introduction
    1. Who Is This Book For?
    2. What’s in This Book?
    3. Contacting the Lead Author
  5. UNIX Fundamentals
    1. Introduction to UNIX and the Shell
      1. UNIX Is an Operating System
      2. The Diversity of UNIX
      3. UNIX Standards and Revisions
      4. Important UNIX Concepts You Must Know First
      5. UNIX Access
      6. How to Do Things the UNIX Way
    2. Getting Started—A Guided Tour of UNIX
      1. Traveling in the Land of UNIX
      2. Getting Access to UNIX
      3. Simple Commands
      4. File Commands
      5. Filesystems
      6. Redirecting Standard I/O
      7. Pagers: One Screen at a Time
      8. Quoting Rules
      9. Commands as Building Blocks
      10. The vi Text Editor
      11. Scripts
    3. UNIX Directories and Pathnames
      1. Introducing the UNIX Directory Tree Structure
      2. Using Directories in UNIX
      3. Changing to Another Directory
      4. Creating New Directories
      5. Removing Existing Directories
      6. Removing Entire Directory Subtrees
      7. Increasing Productivity in Accessing Directories
    4. Rules for Entering UNIX Commands
      1. A Review of the Shell Prompt
      2. UNIX Command-Line Options, Arguments, and Comments
      3. Where Can You Get Help?
      4. Command Not Found Errors
      5. Common Errors Users Make When Entering UNIX Commands
      6. What Is UNIX Telling Me?
      7. What to Do When Your Session Seems to Be Hung
      8. Using a File to Save Command Input or Output (Redirection)
      9. Passing Command Output as Input to Another Command
      10. Commands That Allow Output to be Piped or Redirected
      11. A Summary of Redirection Symbols
      12. Quoting Rules
    5. The UNIX Graphical User Interface (GUI)
      1. Introducing GUI and the X Window System
      2. The Solaris Desktop
      3. OpenWindows
      4. Common Desktop Environment (CDE)
    6. Miscellaneous UNIX Utilities
      1. Custom Applications
      2. Display the Date and Time
      3. The Calendar Command
      4. Counting Lines and Other Things
      5. Arithmetic Integer Calculations
      6. A More Powerful Calculator
      7. The StarOffice Application Suite
  6. Working with UNIX Files
    1. Listing and Finding Directories and Files
      1. Introducing UNIX Files
      2. Listing Files
      3. Using the find Command
    2. Displaying and Printing Files and Pipelines
      1. Displaying Files and Pipelines
      2. Printing Files and Pipelines
    3. Copying, Moving, Renaming, Removing, or Linking Files
      1. Choosing the Destination
      2. Copying, Moving, or Renaming Files
      3. Removing Files
      4. Creating Multiple Names for the Same File
    4. Comparing, Sorting, Modifying, Combining, and Splitting Files
      1. Comparing Files
      2. Sorting Files or Pipelines
      3. Modifying Files or Pipelines
      4. Combining Files
      5. Splitting a File into Multiple Smaller Files
    5. Generating and Using File Lists
      1. Using Filename Generation Wildcards
      2. Using Backquotes to Generate a List of Files
      3. Commands that Allow a List of Filenames and Filename Wildcards
      4. Using xargs to Process a List of Items
  7. System Administration
    1. Installing UNIX at Home
      1. Understanding General UNIX Installation Issues
      2. Installing SCO UnixWare 7 at Home
      3. Installing Sun Solaris 7 at Home
    2. Users, Groups, and Logins
      1. UNIX User Accounts
      2. Displaying Information About the UNIX Password File
      3. Groups
      4. The Login Session
      5. User Account Administration
    3. File Permissions and System Security
      1. Login Security
      2. Planning Groups for a System
      3. Understanding File Modes (Permissions)
      4. Changing Permissions/Owner/Group
      5. Setting Default Permissions for New Files
      6. Watching the Dangerous setuid and setgid Permissions
    4. System Startup, Shutdown, and Managing Jobs
      1. Starting Up the System
      2. Shutting Down the System
      3. Automating Jobs at System Startup or Shutdown
      4. Automating Jobs by Any User
      5. Assigning Job Priorities
      6. Managing Background Jobs
      7. Applying Extra Job Control Under the Korn Shell
    5. System and File Backups
      1. Backing Up User Files
      2. Choosing tar, cpio, or Other Backup Programs
      3. Using tar to Back Up and Restore Files
      4. Using cpio to Back Up and Restore Files
      5. Saving Files on a DOS-Formatted Disk and Restoring Them
      6. Backing Up and Restoring the Operating System
    6. Managing System Resources
      1. Managing Disk Space
      2. Managing System Performance
  8. UNIX Text Processing
    1. Searching for Lines in a File or Pipeline
      1. Finding/Displaying Lines That Contain a Pattern
      2. Wildcard Pattern Matching in Lines (Regular Expressions)
      3. Extra Regular Expression Wildcards Available in egrep
      4. Extra Regular Expression Wildcards Available Only in Perl
      5. Turning Off Regular Expression Wildcards
      6. Checking Only Specific Fields to Select a Line
    2. Replacing or Removing Text from a File or Pipeline
      1. Extracting/Removing Characters by Column Positions
      2. Replacing or Removing Strings (Using Regular Expression)
      3. Using Perl to Replace or Delete Strings
      4. Using awk to Replace or Delete Strings
      5. Determining When to Use awk or cut to Extract Fields
      6. Replacing/Removing Characters in a File or Pipeline
      7. Replacing/Removing Whole Lines
    3. Using vi to Edit a Text File
      1. Introducing the vi Text Editor
      2. Starting vi
      3. Edit Anything with Just 10 vi Commands
      4. Adding a Help Facility to vi
      5. Learn These Eight vi Commands Next
      6. Tips to Help You Use vi
      7. Moving Around in vi
      8. Table of vi Commands for Deleting Text
      9. Recovering Deleted Text
      10. Table of vi Commands for Changing Text
      11. Replacing Text
    4. Letting the vi Editor Work for You
      1. Zipping Through Repetitive Editing
      2. Global and Partial Text Substitution
      3. Moving/Copying Sections of Text in vi
      4. Setting Options for Inserting Text
      5. Harnessing Other UNIX Commands to Work in vi
    5. Command-Line Editing in the Korn Shell
      1. Command-Line Editing in the Korn or Bash Shell
      2. vi Command-Line Editing
      3. Developing Complex Pipelines Using Command-Line Editing
      4. Aliases
    6. Introducing the Emacs Editor
      1. Technical Terms
      2. Starting Emacs
      3. Binding Keys
      4. Defining Macros
      5. Searching and Replacing Text
      6. Spell-Checking Documents
      7. Major and Minor Modes
      8. Getting Help
      9. Carrying on with Emacs
  9. Networking
    1. Accessing Other UNIX Systems by Modem
      1. Accessing Other UNIX Systems by Modem
      2. An Overview of Modem Communications
      3. UNIX Serial Devices
      4. Extending the Network by Modem (PPP)
      5. A Final Note
    2. Accessing Other UNIX Systems on the Network or Internet
      1. Some Important Networking Concepts
      2. Logging On to UNIX over the Network
      3. Transferring Files Across the Network
      4. Executing Commands on Another System in the Network
      5. Sharing a Directory Between Two UNIX Systems (NFS)
      6. Using the mailx command
      7. A Final Note
    3. Accessing UNIX from Windows
      1. Windows and TCP/IP
      2. Dial-Up Networking
      3. SMB Shared Directories and Printers
    4. UNIX and the Internet
      1. Surfing the Internet from UNIX
      2. Downloading Software from the Internet
      3. Using a Character-Based Browser (Lynx)
      4. Finding UNIX Vendor Web Sites
      5. Accessing UNIX Technical Support
      6. Accessing Free (Nonsupported) Software
      7. Reading the Network News on UNIX
  10. Script Programming
    1. Writing Bourne Shell Scripts
      1. Writing/Executing a Simple Script
      2. Running Your Scripts Without a Pathname
      3. Creating and Using Your Own Variables
      4. Interacting with the User
      5. Supplying Script Input on the Command Line
      6. Executing Code Based on Test Results
      7. Performing Arithmetic Calculations
      8. Special Shell Variables
      9. Ending the Script and Setting Completion Status
      10. Giving Proper UNIX Usage Errors
      11. Debugging Your Script
      12. Looping
      13. Selecting From a Menu of Items
    2. Writing Perl Programs
      1. Writing/Executing a Simple Perl Script
      2. Perl Data Types
      3. Special Perl Variables
      4. Interacting with the User
      5. Control Structures
      6. Commonly Used Functions in Perl
      7. Array Manipulation
      8. File Manipulation
      9. Hash Manipulation
      10. System Manipulation
      11. Variable Manipulation
      12. Debugging Your Script
      13. Some Final Words
  11. Appendixes
    1. UNIX Command Reference
      1. =
      2. apropos
      3. at
      4. awk
      5. banner
      6. batch
      7. bc
      8. bg
      9. Bourne shell
      10. C shell
      11. cal
      12. cancel
      13. cat
      14. cd
      15. chgrp
      16. chmod
      17. chown
      18. cmp
      19. col
      20. comm
      21. compress
      22. copy
      23. cp
      24. cpio
      25. crontab
      26. crypt
      27. csh
      28. csplit
      29. cut
      30. date
      31. df
      32. diff
      33. diff3
      34. du
      35. echo
      36. egrep
      37. expr
      38. fg
      39. fgrep
      40. file
      41. Filename Generation Wildcard
      42. find
      43. finger
      44. fsck
      45. grep
      46. gzip
      47. head
      48. id
      49. jobs
      50. join
      51. kill
      52. kill
      53. ksh
      54. less
      55. ln
      56. lp
      57. lpr
      58. lpstat
      59. ls
      60. mail/mailx
      61. man
      62. mkdir
      63. more
      64. mt
      65. mv
      66. nice
      67. nl
      68. nohup
      69. od
      70. passwd
      71. paste
      72. perl
      73. pg
      74. pr
      75. ps
      76. pwd
      77. qcan
      78. Regular Expression Wildcards
      79. renice
      80. rm
      81. rmdir
      82. sed
      83. sh
      84. shutdown (BSD version)
      85. shutdown (System V version)
      86. sleep
      87. sort
      88. split
      89. strings
      90. stty
      91. su
      92. sum
      93. tail
      94. tape
      95. tar
      96. tee
      97. test
      98. touch
      99. tr
      100. type
      101. tty
      102. umask
      103. uname
      104. uniq
      105. uucp
      106. uuencode/uudecode
      107. vi
      108. whence
      109. which
      110. who
      111. Wildcards for Filename Generation
      112. Wildcards for Regular Expressions (R.E.)
      113. xargs
    2. Glossary
  12. Jump Table to Common UNIX Tasks
  13. Quick Reference Guide For the vi Text Editor
  14. Index