Home > Store

Practical Guide to Linux Commands, Editors, and Shell Programming, A, 2nd Edition

Register your product to gain access to bonus material or receive a coupon.

Practical Guide to Linux Commands, Editors, and Shell Programming, A, 2nd Edition

eBook (Watermarked)

  • Sorry, this book is no longer in print.
  • About Watermarked eBooks
  • This PDF will be accessible from your Account page after purchase and requires the free Adobe® Reader® software to read it.

    The eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.

    Watermarked eBook FAQ

Not for Sale


  • Copyright 2010
  • Dimensions: 7-3/8" x 9-1/8"
  • Edition: 2nd
  • eBook (Watermarked)
  • ISBN-10: 0-13-705748-2
  • ISBN-13: 978-0-13-705748-1

For use with all versions of Linux, including Ubuntu,™ Fedora,™ openSUSE,™ Red Hat,® Debian, Mandriva, Mint, and now OS X, too!

  • Get more done faster, and become a true Linux guru by mastering the command line!
  • Learn from hundreds of realistic, high-quality examples
  • NEW! Coverage of the Mac OS X command line and its unique tools
  • NEW! Expert primer on automating tasks with Perl

The Most Useful Linux Tutorial and Reference, with Hundreds of High-Quality Examples for Every Distribution–Now Covers OS X and Perl, Too!


To be truly productive with Linux, you need to thoroughly master shells and the command line. Until now, you had to buy two books to gain that mastery: a tutorial on fundamental Linux concepts and techniques, plus a separate reference. Now, there’s a far better solution. Renowned Linux expert Mark Sobell has brought together comprehensive, insightful guidance on the tools system administrators, developers, and power users need most, and an outstanding day-to-day reference, both in the same book.

This book is 100 percent distribution and release agnostic: You can use it with any Linux system, now and for years to come. Use Macs, too? This new edition adds comprehensive coverage of the Mac OS X command line, including essential OS X-only tools and utilities other Linux/UNIX books ignore.

Packed with hundreds of high-quality, realistic examples, this book gives you Linux from the ground up: the clearest explanations and most useful knowledge about everything from filesystems to shells, editors to utilities, and programming tools to regular expressions. Sobell has also added an outstanding new primer on Perl, the most important programming tool for Linux admins seeking to automate complex, time-consuming tasks.

A Practical Guide to Linux® Commands, Editors, and Shell Programming, Second Edition, is the only book to deliver

  • Better, more realistic examples covering tasks you’ll actually need to perform
  • Deeper insight, based on Sobell’s immense knowledge of every Linux and OS X nook and cranny
  • A start-to-finish primer on Perl for every system administrator
  • In-depth coverage of basic and advanced Linux shell programming with bash and tcsh
  • Practical explanations of 100 core utilities, from aspell to xargs–including Mac OS X specific utilities from ditto to SetFile
  • All-new coverage of automating remote backups with rsync
  • Dozens of system security tips, including step-by-step walkthroughs of implementing secure communications using ssh and scp
  • Tips and tricks for customizing the shell and using it interactively from the command line
  • Complete guides to high-productivity editing with both vim and emacs
  • A comprehensive, 286-page command reference section–now with revised and expanded indexes for faster access to the information you need
  • Instructions for updating systems automatically with apt-get and yum
  • Dozens of exercises to help you practice and gain confidence
  • And much more, including coverage of BitTorrent, gawk, sed, find, sort, bzip2, and regular expressions

Sample Content

Table of Contents

Preface xxxi

Chapter 1: Welcome to Linux and Mac OS X 1

The History of UNIX and GNU—Linux 2

What Is So Good About Linux? 6

Overview of Linux 11

Additional Features of Linux 16

Chapter Summary 18

Exercises 18

Part I: The Linux and Mac OS X Operating Systems 21

Chapter 2: Getting Started 23

Conventions Used in This Book 24

Logging In from a Terminal or Terminal Emulator 26

Working with the Shell 28

su/sudo: Curbing Your Power (root Privileges) 31

Where to Find Documentation 33

More About Logging In 40

Chapter Summary 43

Exercises 44

Advanced Exercises 44

Chapter 3: The Utilities 45

Special Characters 46

Basic Utilities 47

Working with Files 49

| (Pipe): Communicates Between Processes 56

Four More Utilities 57

Compressing and Archiving Files 60

Locating Commands 65

Obtaining User and System Information 67

Communicating with Other Users 70

Email 72

Chapter Summary 72

Exercises 75

Advanced Exercises 75

Chapter 4: The Filesystem 77

The Hierarchical Filesystem 78

Directory Files and Ordinary Files 78

Pathnames 83

Working with Directories 85

Access Permissions 93

ACLs: Access Control Lists 99

Links 104

Chapter Summary 111

Exercises 112

Advanced Exercises 114

Chapter 5: The Shell 117

The Command Line 118

Standard Input and Standard Output 123

Running a Command in the Background 134

Filename Generation/Pathname Expansion 136

Builtins 141

Chapter Summary 142

Exercises 143

Advanced Exercises 144

Part II: The Editors 147

Chapter 6: The vim Editor 149

History 150

Tutorial: Using vim to Create and Edit a File 151

Introduction to vim Features 158

Command Mode: Moving the Cursor 164

Input Mode 168

Command Mode: Deleting and Changing Text 169

Searching and Substituting 173

Miscellaneous Commands 180

Copying, Moving, and Deleting Text 180

Reading and Writing Files 183

Setting Parameters 184

Advanced Editing Techniques 189

Units of Measure 193

Chapter Summary 196

Exercises 201

Advanced Exercises 202

Chapter 7: The emacs Editor 205

History 206

Tutorial: Getting Started with emacs 208

The emacs GUI 215

Basic Editing Commands 216

Online Help 223

Advanced Editing 225

Major Modes: Language-Sensitive Editing 239

Customizing emacs 249

More Information 254

Chapter Summary 254

Exercises 262

Advanced Exercises 264

Part III: The Shells 267

Chapter 8: The Bourne Again Shell 269

Background 270

Shell Basics 271

Parameters and Variables 290

Special Characters 304

Processes 306

History 308

Aliases 324

Functions 327

Controlling bash: Features and Options 330

Processing the Command Line 334

Chapter Summary 343

Exercises 345

Advanced Exercises 347

Chapter 9: The TC Shell 349

Shell Scripts 350

Entering and Leaving the TC Shell 351

Features Common to the Bourne Again and TC Shells 353

Redirecting Standard Error 359

Working with the Command Line 360

Variables 365

Control Structures 378

Builtins 387

Chapter Summary 391

Exercises 392

Advanced Exercises 394

Part IV: Programming Tools 395

Chapter 10: Programming the Bourne Again Shell 397

Control Structures 398

File Descriptors 431

Parameters and Variables 434

Builtin Commands 446

Expressions 460

Shell Programs 468

Chapter Summary 478

Exercises 480

Advanced Exercises 482

Chapter 11: The Perl Scripting Language 485

Introduction to Perl 486

Variables 493

Control Structures 501

Working with Files 510

Sort 513

Subroutines 515

Regular Expressions 517

CPAN Modules 523

Examples 525

Chapter Summary 529

Exercises 529

Advanced Exercises 530

Chapter 12: The AWK Pattern Processing Language 531

Syntax 532

Arguments 532

Options 533

Notes 534

Language Basics 534

Examples 541

Advanced gawk Programming 558

Chapter Summary 563

Exercises 563

Advanced Exercises 564

Chapter 13: The sed Editor 565

Syntax 566

Arguments 566

Options 566

Editor Basics 567

Examples 570

Chapter Summary 581

Exercises 581

Chapter 14: The rsync Secure Copy Utility 583

Syntax 584

Arguments 584

Options 584

Examples 587

Chapter Summary 594

Exercises 594

Part V: Command Reference 597

Standard Multiplicative Suffixes 602

Common Options 603

The sample Utility 604

Part VI: Appendixes 885

Appendix A: Regular Expressions 887

Characters 888

Delimiters 888

Simple Strings 888

Special Characters 888

Rules 891

Bracketing Expressions 892

The Replacement String 892

Extended Regular Expressions 893

Appendix Summary 895

Appendix B: Help 897

Solving a Problem 898

The Apple Web Site 899

Finding Linux and OS X—Related Information 899

Specifying a Terminal 906

Appendix C: Keeping the System Up-to-Date 909

Using yum 910

Using apt-get 916

BitTorrent 921

Appendix D: Mac OS X Notes 925

Open Directory 926

Filesystems 927

Extended Attributes 928

Activating the META Key 935

Startup Files 936

Remote Logins 936

Many Utilities Do Not Respect Apple Human Interface Guidelines 936

Mac OS X Implementation of Linux Features 936

Glossary 939

File Tree Index 989

Utility Index 991

Main Index 995


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership