Home > Store > Operating Systems, Server > Linux/UNIX/Open Source
Practical Guide to Linux Commands, Editors, and Shell Programming, A, 3rd Edition
- By Mark G. Sobell
- Published Sep 14, 2012 by Prentice Hall.
- Copyright 2013
- Dimensions: 7-3/8" x 9-1/8"
- Pages: 1200
- Edition: 3rd
- Book
- ISBN-10: 0-13-308504-X
- ISBN-13: 978-0-13-308504-4
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
Mark G. Sobell is President of Sobell Associates Inc., a consulting firm that specializes in UNIX/Linux training, support, and custom software development. He has more than twenty-five years of experience working with UNIX and Linux systems and is author of many best-selling books, including A Practical Guide to Red Hat® Linux®, Sixth Edition (Prentice Hall, 2012); A Practical Guide to Ubuntu Linux®, Third Edition (Prentice Hall, 2010); and A Practical Guide to the UNIX System (Addison-Wesley, 1995).
“First Sobell taught people how to use Linux . . . now he teaches you the power of Linux. A must-have book for anyone who wants to take Linux to the next level.”
–Jon “maddog” Hall, Executive Director, Linux International
New Chapters on Python and MySQL–Covers Perl, too!
- Learn from hundreds of realistic, high-quality examples, and become a true Linux command-line guru!
- NEW! Covers busybox, Midnight Commander, screen, and sshfs/curlftpf
- Covers the Mac OS X command line and its unique tools
- 295-page reference covers 98 utilities, including Mac OS X commands!
For use with all popular versions of Linux, including Ubuntu™, Fedora™, openSUSE™, Red Hat®, Debian, Mageia, Mint, Arch, CentOS, and Mac OS X, too!
The Most Useful Tutorial and Reference, with Hundreds of High-Quality Examples for Every Popular Linux Distribution
Linux is today’s dominant Internet server platform. System administrators and Web developers need deep Linux fluency, including expert knowledge of shells and the command line. This is the only guide with everything you need to achieve that level of Linux mastery. Renowned Linux expert Mark Sobell has brought together comprehensive, insightful guidance on the tools sysadmins, developers, and power users need most, and has created an outstanding day-to-day reference.
This title is 100 percent distribution and release agnostic. Packed with hundreds of high-quality, realistic examples, it presents Linux from the ground up: the clearest explanations and most useful information about everything from filesystems to shells, editors to utilities, and programming tools to regular expressions.
Use a Mac? You’ll find coverage of the Mac OS X command line, including OS X-only tools and utilities other Linux/UNIX titles ignore. Sobell presents a new MySQL chapter. There’s even an expert introduction to Python–today’s most valuable tool for automating complex, time-consuming administration tasks.
A Practical Guide to Linux® Commands, Editors, and Shell Programming, Third Edition, is the only guide to deliver
- A MySQL chapter to get you started with this ubiquitous relational database management system (RDBMS)
- A masterful introduction to Python for system administrators and power users
- New coverage of the busybox single binary collection of utilities, the screen terminal session manager/multiplexer, and the mc (Midnight Commander) textual file manager, plus a new chapter on using ssh for secure communication
- In-depth coverage of the bash and tcsh shells, including a complete discussion of environment, inheritance, and process locality, plus coverage of basic and advanced shell programming
- Practical explanations of 98 core utilities, from aspell to xargs, including printf and sshfs/curlftpfs, PLUS Mac OS X-specific utilities from ditto to SetFile
- Expert guidance on automating remote backups using 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, including step values, sequence expressions, the eval builtin, and implicit command-line continuation
- High-productivity editing techniques using vim and emacs
- A comprehensive, 295-page command reference section covering 98 utilities, including find, grep, sort, and tar
- Instructions for updating systems using apt-get and yum
- And much more, including coverage of BitTorrent, gawk, sed, find, sort, bzip2, and regular expressions
|
12 of 12 people found the following review helpful
By
This review is from: A Practical Guide to Linux Commands, Editors, and Shell Programming (3rd Edition) (Paperback)
Despite the fact that I am actually quoted in this book in the "Praise foe other books by Mark G. Sobell" section, it really is a good book! Scratch that, it is a book that I am going to make *sure* makes the rounds through my office.Here's the trick. There are a million books and websites and such that have some general instruction on generalized shell scripting or particular commands or even topical stuffs. By and large, they are incomplete and usually feature a bunch of theoretical examples like "suppose you want to draw a box with three nested boxes inside..." Those kinds of things really aren't much help to the average guy and that is where this book differs. This book is chocked full of great command explanations, practical topics and real life examples. Sobell has gone out of his way to present this information not only in an interesting fashion, but a usable one as well, not to mention being very Linux distribution agnostic in the process. For example,... Read more
13 of 14 people found the following review helpful
By
This review is from: A Practical Guide to Linux Commands, Editors, and Shell Programming (3rd Edition) (Paperback)
With the 3rd edition of this book, "A Practical Guide to Linux Commands, Editors and Shell Programming" only got better.I say this with a reasonable bias and favoritism towards Linux, its command line interface which I consider some of the most versatile and best engineering accomplishments and towards this book, which has been my favorite since the first edition. The first edition of the book, was the manual, reference and tutorial all in one that I have been looking for a long time. I have been looking for a book that takes me into the command line world of Linux but in a methodical way describing all the little options, tips, tricks but also the principles that make Linux shell so powerful. Book begins with a brief history of Linux and very informative, relevant overview of the system architecture. It proceeds with the in depth, hands on walkthrogugh the environment, shells, and command line utilities. There is a very useful and every-day... Read more
5 of 5 people found the following review helpful
By
This review is from: A Practical Guide to Linux Commands, Editors, and Shell Programming (3rd Edition) (Paperback)
It was through the previous edition of this book that I really got to know my way around the command line. I had a bit of knowledge beforehand, but Sobell's book introduced me to loads of new utilities and made me far more competent in using bash and vim.I'm happy to say the Third Edition retains what made the Second so great, and adds considerably more. As other reviewers have noted, one of the standouts is the new chapter on Python. I had no Python experience before picking up this book, but I was able to work through the Python chapter and write some simple code in no time. Of course, since this is a Linux book rather than a dedicated Python book, Sobell covers only the basics, but it's enough to show the power and elegance of the language. I feel inspired to look into Python further. I also particularly appreciate the extra attention given to Mac OS X in this edition. The handy command reference in the back includes icons indicating utilities (or options for... Read more |
› See all 20 customer reviews...
Table of Contents
Preface xxxvii
Chapter 1: Welcome to Linux and Mac OS X 1
The History of UNIX and GNU—Linux 3
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 (Emulator) 26
Working from the Command Line 28
su/sudo: Curbing Your Power (root Privileges) 32
Where to Find Documentation 33
More About Logging In and Passwords 42
Chapter Summary 46
Exercises 46
Advanced Exercises 47
Chapter 3: The Utilities 49
Special Characters 50
Basic Utilities 51
Working with Files 53
| (Pipeline): Communicates Between Processes 60
Four More Utilities 61
Compressing and Archiving Files 63
Locating Utilities 68
Displaying User and System Information 70
Communicating with Other Users 74
Email 76
Chapter Summary 76
Exercises 79
Advanced Exercises 80
Chapter 4: The Filesystem 81
The Hierarchical Filesystem 82
Directory Files and Ordinary Files 83
Pathnames 87
Working with Directories 90
Access Permissions 98
ACLs: Access Control Lists 104
Links 109
Chapter Summary 119
Exercises 120
Advanced Exercises 122
Chapter 5: The Shell 125
The Command Line 126
Standard Input and Standard Output 133
Running a Command in the Background 146
Filename Generation/Pathname Expansion 148
Builtins 153
Chapter Summary 153
Exercises 155
Advanced Exercises 156
Part II: The Editors 157
Chapter 6: The vim Editor 159
History 160
Tutorial: Using vim to Create and Edit a File 161
Introduction to vim Features 168
Command Mode: Moving the Cursor 174
Input Mode 178
Command Mode: Deleting and Changing Text 179
Searching and Substituting 183
Miscellaneous Commands 190
Copying, Moving, and Deleting Text 190
Reading and Writing Files 193
Setting Parameters 194
Advanced Editing Techniques 199
Units of Measure 203
Chapter Summary 206
Exercises 211
Advanced Exercises 212
Chapter 7: The emacs Editor 213
History 214
Tutorial: Getting Started with emacs 216
Basic Editing Commands 223
Online Help 229
Advanced Editing 232
Major Modes: Language-Sensitive Editing 246
Customizing emacs 256
More Information 260
Chapter Summary 261
Exercises 269
Advanced Exercises 270
Part III: The Shells 273
Chapter 8: The Bourne Again Shell (bash) 275
Background 276
Startup Files 278
Commands That Are Symbols 281
Redirecting Standard Error 282
Writing and Executing a Simple Shell Script 284
Control Operators: Separate and Group Commands 289
Job Control 294
Manipulating the Directory Stack 297
Parameters and Variables 300
Special Characters 315
Locale 316
Time 320
Processes 323
History 326
Aliases 342
Functions 346
Controlling bash: Features and Options 349
Processing the Command Line 354
Chapter Summary 364
Exercises 366
Advanced Exercises 368
Chapter 9: The TC Shell (tcsh) 369
Shell Scripts 370
Entering and Leaving the TC Shell 371
Features Common to the Bourne Again and TC Shells 373
Redirecting Standard Error 379
Working with the Command Line 380
Variables 385
Control Structures 398
Builtins 407
Chapter Summary 411
Exercises 412
Advanced Exercises 414
Part IV: Programming Tools 415
Chapter 10: Programming the Bourne Again Shell (bash) 417
Control Structures 418
File Descriptors 452
Parameters 458
Variables 467
Builtin Commands 476
Expressions 492
Implicit Command-Line Continuation 499
Shell Programs 500
Chapter Summary 510
Exercises 512
Advanced Exercises 514
Chapter 11: The Perl Scripting Language 517
Introduction to Perl 518
Variables 526
Control Structures 533
Working with Files 542
Sort 546
Subroutines 547
Regular Expressions 550
CPAN Modules 555
Examples 558
Chapter Summary 561
Exercises 562
Advanced Exercises 562
Chapter 12: The Python Programming Language 563
Introduction 564
Scalar Variables, Lists, and Dictionaries 568
Control Structures 574
Reading from and Writing to Files 579
Regular Expressions 583
Defining a Function 584
Using Libraries 585
Lambda Functions 589
List Comprehensions 590
Chapter Summary 591
Exercises 592
Advanced Exercises 592
Chapter 13: The MySQL Database Management System 595
Notes 596
Installing a MySQL Server and Client 599
Client Options 600
Setting Up MySQL 601
Creating a Database 603
Adding a User 604
Examples 605
Chapter Summary 617
Exercises 617
Chapter 14: The AWK Pattern Processing Language 619
Syntax 620
Arguments 620
Options 621
Notes 622
Language Basics 622
Examples 629
Advanced gawk Programming 646
Chapter Summary 651
Exercises 651
Advanced Exercises 652
Chapter 15: The sed Editor 653
Syntax 654
Arguments 654
Options 654
Editor Basics 655
Examples 658
Chapter Summary 669
Exercises 669
Part V: Secure Network Utilities 671
Chapter 16: The rsync Secure Copy Utility 673
Syntax 674
Arguments 674
Options 675
Examples 677
Chapter Summary 684
Exercises 685
Chapter 17: The OpenSSH Secure Communication Utilities 687
Introduction to OpenSSH 688
Running the ssh, scp, and sftp OpenSSH Clients 691
Tunneling/Port Forwarding 706
Chapter Summary 708
Exercises 709
Advanced Exercises 709
Part VI: Command Reference 711
Utilities That Display and Manipulate Files 713
Network Utilities 714
Utilities That Display and Alter Status 715
Utilities That Are Programming Tools 716
Miscellaneous Utilities 716
Standard Multiplicative Suffixes 717
Common Options 718
The sample Utility 718
sample: Brief description of what the utility does 719
aspell: Checks a file for spelling errors 721
at: Executes commands at a specified time 725
busybox: Implements many standard utilities 729
bzip2: Compresses or decompresses files 732
cal: Displays a calendar 734
cat: Joins and displays files 735
cd: Changes to another working directory 737
chgrp: Changes the group associated with a file 739
chmod: Changes the access mode (permissions) of a file 741
chown: Changes the owner of a file and/or the group the file is associated with 746
cmp: Compares two files 748
comm: Compares sorted files 750
configure: Configures source code automatically 752
cp: Copies files 754
cpio: Creates an archive, restores files from an archive, or copies a directory hierarchy 758
crontab: Maintains crontab files 763
cut: Selects characters or fields from input lines 766
date: Displays or sets the system time and date 769
dd: Converts and copies a file 772
df: Displays disk space usage 775
diff: Displays the differences between two text files 777
diskutil: Checks, modifies, and repairs local volumes (OS X) 782
ditto: Copies files and creates and unpacks archives (OS X) 785
dmesg: Displays kernel messages 787
dscl: Displays and manages Directory Service information (OS X) 788
du: Displays information on disk usage by directory hierarchy and/or file 791
echo: Displays a message 794
expand/unexpand: Converts TABs to SPACEs and SPACEs to TABs 796
expr: Evaluates an expression 798
file: Displays the classification of a file 802
find: Finds files based on criteria 804
finger: Displays information about users 810
fmt: Formats text very simply 812
fsck: Checks and repairs a filesystem 814
ftp: Transfers files over a network 819
gawk: Searches for and processes patterns in a file 825
gcc: Compiles C and C++ programs 826
GetFileInfo: Displays file attributes (OS X) 831
grep: Searches for a pattern in files 833
gzip: Compresses or decompresses files 838
head: Displays the beginning of a file 841
join: Joins lines from two files based on a common field 843
kill: Terminates a process by PID 846
killall: Terminates a process by name 848
launchctl: Controls the launchd daemon (OS X) 850
less: Displays text files, one screen at a time 852
ln: Makes a link to a file 856
lpr: Sends files to printers 858
ls: Displays information about one or more files 861
make: Keeps a set of programs current 869
man: Displays documentation for utilities 875
mc: Manages files in a textual environment (aka Midnight Commander) 879
mkdir: Creates a directory 886
mkfs: Creates a filesystem on a device 887
mv: Renames or moves a file 890
nice: Changes the priority of a command 892
nl: Numbers lines from a file 894
nohup: Runs a command that keeps running after you log out 896
od: Dumps the content of a file 897
open: Opens files, directories, and URLs (OS X) 901
otool: Displays object, library, and executable files (OS X) 903
paste: Joins corresponding lines from files 905
pax: Creates an archive, restores files from an archive, or copies a directory hierarchy 907
plutil: Manipulates property list files (OS X) 913
pr: Paginates files for printing 915
printf: Formats string and numeric data 917
ps: Displays process status 921
renice: Changes the priority of a process 925
rm: Removes a file (deletes a link) 926
rmdir: Removes directories 928
rsync: Copies files and directory hierarchies securely over a network 929
scp: Securely copies one or more files to or from a remote system 930
screen: Manages several textual windows 931
sed: Edits a file noninteractively 937
SetFile: Sets file attributes (OS X) 938
sleep: Creates a process that sleeps for a specified interval 940
sort: Sorts and/or merges files 942
split: Divides a file into sections 951
ssh: Securely executes commands on a remote system 953
sshfs/curlftpfs: Mounts a directory on an OpenSSH or FTP server as a local directory 954
stat: Displays information about files 957
strings: Displays strings of printable characters from files 959
stty: Displays or sets terminal parameters 960
sysctl: Displays and alters kernel variables at runtime 964
tail: Displays the last part (tail) of a file 965
tar: Stores or retrieves files to/from an archive file 968
tee: Copies standard input to standard output and one or more files 973
telnet: Connects to a remote computer over a network 974
test: Evaluates an expression 978
top: Dynamically displays process status 981
touch: Creates a file or changes a file’s access and/or modification time 985
tr: Replaces specified characters 987
tty: Displays the terminal pathname 990
tune2fs: Changes parameters on an ext2, ext3, or ext4 filesystem 991
umask: Specifies the file-creation permissions mask 994
uniq: Displays unique lines from a file 996
w: Displays information about local system users 998
wc: Displays the number of lines, words, and bytes in one or more files 1000
which: Shows where in PATH a utility is located 1001
who: Displays information about logged-in users 1003
xargs: Converts standard input to command lines 1005
Part VII: Appendixes 1009
Appendix A: Regular Expressions 1011
Characters 1012
Delimiters 1012
Simple Strings 1012
Special Characters 1012
Rules 1015
Bracketing Expressions 1016
The Replacement String 1016
Extended Regular Expressions 1017
Appendix Summary 1019
Appendix B: Help 1021
Solving a Problem 1022
Finding Linux and OS X Related Information 1023
Specifying a Terminal 1024
Appendix C: Keeping the System Up-to-Date 1027
Using yum 1028
Using apt-get 1034
BitTorrent 1038
Appendix D: Mac OS X Notes 1041
Open Directory 1042
Filesystems 1043
Extended Attributes 1044
Activating the Terminal META Key 1049
Startup Files 1050
Remote Logins 1050
Many Utilities Do Not Respect Apple Human Interface Guidelines 1050
Installing Xcode and MacPorts 1050
Mac OS X Implementation of Linux Features 1051
Glossary 1053
File Tree Index 1105
Utility Index 1107
Main Index 1111
Sample Pages

This book includes free shipping!
This book includes free shipping!
eBook (Watermarked)
$39.99
$31.99
Includes EPUB, MOBI, and PDF
About eBook Formats
This eBook includes the following formats, accessible from your Account page after purchase:
EPUBThe open industry format known for its reflowable content and usability on supported mobile devices.
MOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.
PDFThe popular standard, used most often with the free Adobe® Reader® software.
This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.
- Request an Instructor or Media review copy.
- Corporate, Academic, and Employee Purchases
- International Buying Options
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.

