A Practical Guide to Linux Commands, Editors, and Shell P... and over 2 million other books are available for Amazon Kindle . Learn more

Sign in to turn on 1-Click ordering.
Trade in Yours
For a £6.00 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Sorry, this item is not available in
Image not available for
Image not available

Start reading A Practical Guide to Linux Commands, Editors, and Shell P... on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

A Practical Guide to Linux Commands, Editors, and Shell Programming [Paperback]

Mark G. Sobell
5.0 out of 5 stars  See all reviews (1 customer review)
RRP: £31.99
Price: £23.95 & FREE Delivery in the UK. Details
You Save: £8.04 (25%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In stock.
Dispatched from and sold by Amazon. Gift-wrap available.
Want it Monday, 25 Aug.? Choose Express delivery at checkout. Details


Amazon Price New from Used from
Kindle Edition £14.54  
Paperback £23.95  
Trade In this Item for up to £6.00
Trade in A Practical Guide to Linux Commands, Editors, and Shell Programming for an Amazon Gift Card of up to £6.00, which you can then spend on millions of items across the site. Trade-in values may vary (terms apply). Learn more

Book Description

14 Sep 2012 013308504X 978-0133085044 3

“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 MySQLCovers 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


Frequently Bought Together

A Practical Guide to Linux Commands, Editors, and Shell Programming + The Linux Command Line: A Complete Introduction + Linux Bible
Price For All Three: £64.11

Buy the selected items together

Product details

  • Paperback: 1200 pages
  • Publisher: Prentice Hall; 3 edition (14 Sep 2012)
  • Language: English
  • ISBN-10: 013308504X
  • ISBN-13: 978-0133085044
  • Product Dimensions: 22.9 x 18.7 x 3.7 cm
  • Average Customer Review: 5.0 out of 5 stars  See all reviews (1 customer review)
  • Amazon Bestsellers Rank: 366,395 in Books (See Top 100 in Books)
  • See Complete Table of Contents

More About the Author

Discover books, learn about writers, and more.

Product Description


Praise for Previous Editions of A Practical Guide to Linux® Commands, Editors, and Shell Programming


“This book is a very useful tool for anyone who wants to ‘look under the hood’ so to speak, and really start putting the power of Linux to work. What I find particularly frustrating about man pages is that they never include examples. Sobell, on the other hand, outlines very clearly what the command does and then gives several common, easy-to-understand examples that make it a breeze to start shell programming on one’s own. As with Sobell’s other works, this is simple, straight-forward, and easy to read. It’s a great book and will stay on the shelf at easy arm’s reach for a long time.”

–Ray Bartlett, Travel Writer


“Overall I found this book to be quite excellent, and it has earned a spot on the very front of my bookshelf. It covers the real ‘guts’ of Linux– the command line and its utilities–and does so very well. Its strongest points are the outstanding use of examples, and the Command Reference section. Highly recommended for Linux users of all skill levels. Well done to Mark Sobell and Prentice Hall for this outstanding book!”

–Dan Clough, Electronics Engineer and Slackware Linux User


“Totally unlike most Linux books, this book avoids discussing everything via GUI and jumps right into making the power of the command line your friend.”

–Bjorn Tipling, Software Engineer, ask.com


“This book is the best distro-agnostic, foundational Linux reference I’ve ever seen, out of dozens of Linux-related books I’ve read. Finding this book was a real stroke of luck. If you want to really understand how to get things done at the command line, where the power and flexibility of free UNIX-like OSes really live, this book is among the best tools you’ll find toward that end.”

–Chad Perrin, Writer, TechRepublic


“I moved to Linux from Windows XP a couple of years ago, and after some distro hopping settled on Linux Mint. At age 69 I thought I might be biting off more than I could chew, but thanks to much reading and the help of a local LUG I am now quite at home with Linux at the GUI level. “Now I want to learn more about the CLI and a few months ago bought your book: A Practical Guide to Linux® Commands, Editors, and Shell Programming, Second Edition.


“For me, this book is proving to be the foundation upon which my understanding of the CLI is being built. As a comparative ‘newbie’ to the Linux world, I find your book a wonderful, easy-to-follow guide that I highly recommend to other Linux users.”

–John Nawell, CQLUG (Central Queensland Linux User Group)


“I have the second edition of A Practical Guide to Linux® Commands, Editors, and Shell Programming and am a big fan. I used it while working as a Cisco support engineer. I plan to get the third edition as soon as it is released. We will be doing a ton of command-line work on literally 1000 boxes (IMS core nodes). I feel you have already given me a lot of tools with the second edition. I want to get your new book as soon as possible. The way you write works very well for my style of learning.”

–Robert Lingenfelter, Support Engineer, VoIP/IMS


Praise for Other Books by Mark G. Sobell


“Since I’m in an educational environment, I found the content of Sobell’s book to be right on target and very helpful for anyone managing Linux in the enterprise. His style of writing is very clear. He builds up to the chapter exercises, which I find to be relevant to real-world scenarios a user or admin would encounter. An IT/IS student would find this book a valuable complement to their education. The vast amount of information is extremely well balanced and Sobell manages to present the content without complicated asides and meandering prose. This is a ‘must have’ for anyone managing Linux systems in a networked environment or anyone running a Linux server. I would also highly recommend it to an experienced computer user who is moving to the Linux platform.”

–Mary Norbury, IT Director, Barbara Davis Center, University of Colorado at Denver, from a review posted on slashdot.org


“I had the chance to use your UNIX books when I when was in college years ago at Cal Poly, San Luis Obispo, CA. I have to say that your books are among the best! They’re quality books that teach the theoretical aspects and applications of the operating system.”

–Benton Chan, IS Engineer


“The book has more than lived up to my expectations from the many reviews I read, even though it targets FC2. I have found something very rare with your book: It doesn’t read like the standard technical text, it reads more like a story. It’s a pleasure to read and hard to put down. Did I say that?! :-)”

–David Hopkins, Business Process Architect


“Thanks for your work and for the book you wrote. There are really few books that can help people to become more efficient administrators of different workstations. We hope (in Russia) that you will continue bringing us a new level of understanding of Linux/UNIX systems.”

–Anton Petukhov


“Mark Sobell has written a book as approachable as it is authoritative.”

–Jeffrey Bianchine, Advocate, Author, Journalist


“Excellent reference book, well suited for the sysadmin of a Linux cluster, or the owner of a PC contemplating installing a recent stable Linux. Don’t be put off by the daunting heft of the book. Sobell has striven to be as inclusive as possible, in trying to anticipate your system administration needs.”

–Wes Boudville, Inventor


A Practical Guide to Red Hat® Linux® is a brilliant book. Thank you, Mark Sobell.”

–C. Pozrikidis, University of California at San Diego


“This book presents the best overview of the Linux operating system that I have found. . . . [It] should be very helpful and understandable no matter what the reader’s background: traditional UNIX user, new Linux devotee, or even Windows user. Each topic is presented in a clear, complete fashion and very few assumptions are made about what the reader knows. . . . The book is extremely useful as a reference, as it contains a 70-page glossary of terms and is very well indexed. It is organized in such a way that the reader can focus on simple tasks without having to wade through more advanced topics until they are ready.”

–Cam Marshall, Marshall Information Service LLC, Member of Front Range UNIX Users Group [FRUUG], Boulder, Colorado


“Conclusively, this is THE book to get if you are a new Linux user and you just got into RH/Fedora world. There’s no other book that discusses so many different topics and in such depth.”

–Eugenia Loli-Queru, Editor in Chief, OSNews.com


“I currently own one of your books, A Practical Guide to Linux®. I believe this book is one of the most comprehensive and, as the title says, practical guides to Linux I have ever read. I consider myself a novice and I come back to this book over and over again.”

–Albert J. Nguyen


“Thank you for writing a book to help me get away from Windows XP and to never touch Windows Vista. The book is great; I am learning a lot of new concepts and commands. Linux is definitely getting easier to use.”

–James Moritz


“I am so impressed by how Mark Sobell can approach a complex topic in such an understandable manner. His command examples are especially useful in providing a novice (or even an advanced) administrator with a cookbook on how to accomplish real-world tasks on Linux. He is truly an inspired technical writer!”

–George Vish II, Senior Education Consultant, Hewlett-Packard Company


“Overall, I think it’s a great, comprehensive Ubuntu book that’ll be a valuable resource for people of all technical levels.”

–John Dong, Ubuntu Forum Council Member, Backports Team Leader


“The JumpStart sections really offer a quick way to get things up and running, allowing you to dig into the details of the book later.”

–Scott Mann, Aztek Networks


“I would so love to be able to use this book to teach a class about not just Ubuntu or Linux but about computers in general. It is thorough and well written with good illustrations that explain important concepts for computer usage.”

–Nathan Eckenrode, New York Local Community Team


“Ubuntu is gaining popularity at the rate alcohol did during Prohibition, and it’s great to see a well-known author write a book on the latest and greatest version. Not only does it contain Ubuntu-specific information, but it also touches on general computer-related topics, which will help the average computer user to better understand what’s going on in the background. Great work, Mark!”

–Daniel R. Arfsten, Pro/ENGINEER Drafter/Designer


“I read a lot of Linux technical information every day, but I’m rarely impressed by tech books. I usually prefer online information...

About the Author

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 thirty years of experience working with UNIX and Linux systems and is the author of many best-selling books, including A Practical Guide to Fedora™ and Red Hat® Enterprise Linux®, Sixth Edition, and A Practical Guide to Ubuntu Linux®, Third Edition, both from Prentice Hall.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

4 star
3 star
2 star
1 star
5.0 out of 5 stars
5.0 out of 5 stars
Most Helpful Customer Reviews
5.0 out of 5 stars Must have book for linux noobies 27 Aug 2013
Format:Paperback|Verified Purchase
I took lots of learnings from this book. Command promt is an essential tool for linux users. Personally, I like Mark Sobell's book. It is easy to unerstand them and makes light introduction to heavy topics.
Comment | 
Was this review helpful to you?
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 4.5 out of 5 stars  34 reviews
23 of 26 people found the following review helpful
5.0 out of 5 stars Still One of the Best Unix and Linux References Available 29 Mar 2013
By Chad Perrin - Published on Amazon.com
DISCLAIMER/DISCLOSURE: The publisher furnished me with a complimentary paperback copy of the third edition, as well as access to ebook versions. I have received no compensation for this review.

My review largely pertains to both the hardcopy/paperback version and the EPUB ebook version. I will point out where the ebook and hardcopy versions differ in this review. I do not own a Kindle or use any other MOBI format ebook reader, so your mileage may vary when reading the Kindle version of this book.


I have now read three editions of this book, and this third edition upholds the standard as the best distribution-agnostic Linux reference I have ever seen, out of dozens of Linux-related books I have read. It is in fact more than a reference, as most chapters serve as in-depth tutorials as well, such that starting at the beginning of a chapter that covers the subject matter you need to learn at the level of understanding you need, and reading to the end of the chapter, provides a solid foundation in that subject.

This is a book about practical skills with practical tools. It largely eschews the approach of many Linux books that describe the most immediate and obvious interfaces to accomplishing trivial tasks in a default install of a specific Linux distribution. Instead, it favors covering the core userland tools that are likely to be present in any Linux install, default or highly customized, addressing things like using shell builtins and pipelines to best advantage, applying the most universal (and sometimes least well-known) command line utilities to the problems for which they were designed, the basics of administration scripting, the most powerful text-processing editors available on Unix-like systems (specifically Vim, Emacs, and sed), and so on. These are not tools that will go away or be wildly modified beyond recognition in a later release. They are stable, highly functional tools, and you can rely on the skills you learn for using them not only across versions of your favorite distribution or multiple Linux distributions; you can also rely on them, generally speaking, when using other Unix-like operating systems such as FreeBSD or Solaris.

While the particular focus on GNU tools is regrettable, it is understandable given the prevalence of the GNU coreutils across Linux distributions, and when running up against minor differences between GNU utilities and alternatives (such as BSD utilities) a quick visit to the relevant manpage should clear up any problems quickly. Where manpages can be cryptic as a source of knowledge for someone newly learning to use a given utility, this book provides a gentler, but faster, introduction to common use cases, so that the user is ready to make use of the reference value of manpages more fully.

I've hinted at the usefulness of the book for more than just Linux here, already, and have made more explicit mention of it in reviews of earlier editions. I am in fact a FreeBSD user more than a Linux user (and favor OpenBSD for router/firewall systems), but I still find A Practical Guide to Linux Commands, Editors, and Shell Programming a valuable reference even when working in a FreeBSD environment. The second and third editions add to this specific coverage of the ways Apple MacOS X differs from popular Linux distributions, enhancing its cross-platform value (though I personally would appreciate coverage of BSD Unix systems more).


Some specific observations deserve attention:

The third edition marks the first time I have tried reading the book straight through from beginning to end, skimming some areas a bit but carefully reading most of it. This reveals the limitations of the book's organization as well as its strengths. It is clearly not meant to be read directly, linearly from cover to cover. There is a lot of repetition in this approach to using the book. That repetition lends to the strength of the book as a series of stand-alone tutorials, however, and helps ensure that use as a reference does not force the reader to flip through pages to different sections of the book to get the full picture when looking up a particular item. Use the book as it is designed to be used, and it will serve you admirably; read it as a linear text with a beginning, middle, and end, and you may find it dry and repetitive.

In areas outside its core competence, the book falls a bit short of ideal. Take care to recognize such topic areas, and take the advice and lessons offered in those areas with a grain of salt. The core competence areas of the book, of course, are those mentioned in the title (commands, editors, and shells) or in chapter and appendix headings (basic Perl, filesystem, and regular expressions). Areas outside of the book's core competency where I have noticed problems include its attempts to describe licensing, explain the history of Linux and other open source software systems, and refer to conventions of less Unix-like systems such as calling a desktop environment "Desktop manager". It also manages to give bad security advice in a password sidebar, explicitly telling users that there are times where it is better to use a single password for a number of different authentication contexts (e.g. multiple websites) as opposed to offering actually good advice like using a password manager.

Some information has been allowed to get out of date in newer editions. One example is that of debuggers, where the book refers to "debuggers, including ups and gdb". The ups debugger saw a beta release in 2003 and seems to have been abandoned since then. The book meanwhile fails to mention LLDB, the debugger built for LLVM/Clang (the major competition for GCC in the open source C and C++ development world, and widely regarded as the superior C compiler). LLDB was announced two years before the third edition's publication date. Of course, in a book with the size and information density of A Practical Guide to Linux Commands, Editors, and Shell Programming, it is not surprising that some details like this might be overlooked, but it is still worth noting that such oversights exist.

Just about every book in the world has grammatical problems -- many of them the kinds of problems that very few people realize are problems at all. This one is no exception, though they rarely descend to the level of confusing the reader. One example that does potentially confuse a reader is the sentence in the explanation of the w command that reads "The third column shows the system that a remote user is logged in from," where the construction of that sentence could lead a reader to think it was saying something equivalent to "The fact that a remote user is logged in is shown to the system by the third column." (The intended meaning was "The third column indicates the system from which a remote user is logged in.") Thankfully, such misconstructions are rare and easily sorted out on a second reading.

Vim is an incredibly powerful text processing tool, and a single effect can often be achieved any number of ways. As such, any attempt to present Vim functionality to new users will almost certainly end up doing some things in ways that can be criticized. This book is no exception to this, despite the fact it does a very good job of helping the user learn how to make use of Vim functionality. One example is the fact it completely overlooks "c" commands in Vim, describing how to achieve the same effects in a less efficient manner, as well as overlooking the use of the "e" movement command with "d" commands for word deletion.

Some minor inaccuracies suggest the author's preferences. For instance: "With emacs, however, you can have many work buffers and switch among them without having to write the buffer out and read it back in." The same applies to Vim, so the use of the word "however" here is misleading.


The book appears to be straying from its singular purpose, which I find disappointing, as particularly demonstrated by the addition of a chapter about MySQL:

There is an entire chapter about MySQL. In a book titled "A Practical Guide to Linux Commands, Editors, and Shell Programming" I have to wonder what this chapter is doing in the book. It is a handy reference, I suppose, but it is in the wrong book. If any databases were to be addressed here, better choices for the subject matter of this book would have been bdb, dbm, and SQLite, as any of the three (least of all SQLite, but that would still be better than MySQL) is much closer to being relevant to the core subject matter of this book. As with the Unix philosophy -- much ignored and violated in the Linux developer community lately, but still important -- the book should have stuck to its pattern in earlier editions of adhering a bit more to the "do one thing well" aesthetic. What this book has always done well is focus on the fundamentals of managing and using a Unix-like system, covering it with a fair level of comprehensiveness and depth but still sticking to the important core value of command line Linux system use and administration. With this expansion into the realm of database administration, it departs from that worthy purpose. Nothing appears to have been cut from the book to make room for the MySQL chapter, and in fact the page count continues to increase from edition to edition (despite the fact that thinner paper results in a thinner book), but diffusing the focus of the book with coverage of topics notably outside its obvious intent and core competency does one of the best books I have encountered for use as a Unix-like operating system user's reference a distinct disservice. The space could have been better spent adding coverage for BSD Unix systems, introducing the reader to console-based alternatives to GUI applications, and incorporating information about newer and better designed alternatives to old tools such as LLVM/Clang (as a GCC alternative) and tmux (as a GNU Screen alternative).

It even gets the description of MySQL, as "the world's most popular open-source relational database management system", wrong. That distinction easily goes to SQLite, which has managed to work its way into so many systems without many people realizing it is there that it beggars the imagination. Even the highly popular Firefox browser makes use of SQLite.


Some EPUB format observations should be noted:

In the font used for sidebars in the EPUB, backticks and single-quotes (i.e. apostrophes) look essentially identical, which can contribute to reader confusion. Knowing this in advance should, I hope, help readers ensure they do not suffer much frustration in making use of the ebook text.

Page number references within the EPUB seem to be entirely inaccurate, at least most of the time. For instance, a reference to "File Locks" on page 171 is a link to a "File Locks" section in the book that appears on page 213 of the EPUB, according to the ebook pagination.

The way tables are rendered in the EPUB, the text is small enough that screen resolution is likely to fail to produce readable text on many ereaders. It certainly did on mine.

The sidebars are so narrow in the EPUB as to appear absurd, a thin column of text between wide swaths of blank space rendering it odd -- and somewhat difficult -- to read at normal speed. Code samples are even worse, not because they are more narrow, but because the haphazard linewrap consequences make it even more exceedingly difficult to read them than it is to read the normal textual sidebars.

In some cases within the EPUB, the caption for a table is on one EPUB page, and the table itself does not start until the following EPUB page.

Thanks to sidebar placement issues in the translation from print layout to EPUB, sometimes the relationships between different pieces of text end up "wrong". For instance, in a discussion of shell PATH variables, a parenthetical remark reads "(but see the preceding security tip)". Unfortunately, the security tip in question is on the following page -- not a preceding page.

The EPUB is missing a lot of information that is available in the hardcopy book. For instance, two references to "nullglob" on page 353 lead to page 392 of the EPUB, which contains the note about the "shopt" option setting builtin from page 351 of the hardcopy book. The "nullglob" entry one is intended to find from those references is missing from the EPUB, along with about three pages of other bash options in a short reference section in the hardcopy book.

The font used for inline code samples in the EPUB is pretty bad. It is not fixed width, and causes problems like two minus tokens in quick succession in a postdecrement operator to appear as one long dash character, like an em dash.


Some advice in the book runs afoul of personal peeves, such as the programming language tip about tcsh:

A tip sidebar in the book says "Tip: Do not use tcsh as a programming language". It goes on to give the advice that tcsh is not as good a "programming language" as bash, and that if you are only going to learn one shell "programming language", you should learn bash. While I agree that one should not use tcsh as a programming language, I also believe one should not use bash as a programming language, and that anyone who is really and truly only going to learn how to use one shell for admin scripting, that person should actually learn sh (POSIX or Bourne shell) instead. Note that this is not because sh is a good shell. For interactive command shell use, it is in fact a fairly miserable excuse for a shell these days, having been superseded by superior interactive command shells such as tcsh and mksh. Some find shells such as zsh even better than those, though zsh is too heavyweight for my taste. As an interactive shell, however, bash gives you all the heavy, ponderous, unwieldy resource-consuming operation of zsh while falling well short of zsh capabilities. The reason sh is the best choice if you are only going to learn one shell, however, is that it should be used for simple shell scripting because of portability concerns (every Unixy system has some kind of sh implementation on it, but many lack csh, tcsh, zsh, bash, or ksh implementations, for instance). Furthermore, no shell should be used for less trivial scripting such as would be suitable to languages like Perl, Python, and Ruby (two of which are covered in their own chapters of the book), due to the fact that stretching the capabilities of even the most sophisticated interactive command shell implementations with the extended feature set of something like zsh will only result in largely unmaintainable disaster areas in the source of your misbegotten "applications". Stick to a programming language actually designed first and foremost for programming when you want to do anything nontrivial (and even a lot of things that are trivial), and stick to sh for glorified batch execution scripts. The rule of thumb should be "If you need something more than sh, you need something more than any command shell syntax." It should absolutely not be "Use bash instead of tcsh because bash has more badly designed features than tcsh."


Final Analysis:

Despite some minor warts, this is still overall one of the best books for users of Unix-like systems in general that I have ever encountered. In fact, in many ways it is consistently getting better. A massive tome at a thousand or so pages in any edition, each edition has actually gotten longer with the addition of yet more information, and even as the page count has increased the paper quality and narrowness of binding have improved as well. I recommend it without hesitation for use as both a reference and a collection of valuable tutorials for fundamental Unix-like system usage skills.

Given the problems I have noted in the EPUB version, I strongly recommend getting the hardcopy version when choosing a version to buy. By the time you read this review, however, some of the ebook issues may have been corrected.
18 of 20 people found the following review helpful
5.0 out of 5 stars A Practical Guide to Linux Commands, Editors, and Shell Programming (3rd Edition) 8 Nov 2012
By L. Fesenden - Published on Amazon.com
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, he covers both the apt-get and yum utilities. There are even some OS X notes as well.

This is a vast and enormous subject to cover and Sobell does his usual excellent job with it. He starts you out with a little background, moves you into using editors and commands and different shells and even into some interpreted languages, all while guiding you through enough pertinent information to not only perk you interest a little on the subject, but give you a functional, working understanding as well. Great job and this is certainly another book I will be holding on to - at least until the next edition comes out
15 of 17 people found the following review helpful
5.0 out of 5 stars Detailed and Complete, Ultimate Linux Guru Material 4 Nov 2012
By Edmon Begoli - Published on Amazon.com
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 practical exercise at the end of the each chapter.

Book continues with in depth chapters on Linux filesystem, the shell, editors (emacs and vi) and the programming environment including (g)awk and sed. This third version of the book now covers the OSX's command line interface which is very nice.
The best, and for me,the ultimate buy-in factor for the third edition, is the brand new chapter covering to reasonable depth Python.
There is also a full, new chapter on MySQL. (That Sobell added a chapter on Postgres, I would give him six stars :-) )

Book concludes with excellend command reference section (300 pages) and Appendix on regular expressions (superb),
getting help with Linux and keeping the system up to date (using rpm, yum apt-get and bit torrent).

This is one of those rare books that in one domain offers a complete package to those who want to became specialists ( Linux CLI, system administration).
Although Linux is popular, Linux CLI and system administration skills are still relatively rare (and well paid).
I recommend this books to all who want to get not better, but great at this aspect of Linux. If nothing else, it will boost your geek bragging rights.
Five stars!
7 of 7 people found the following review helpful
4.0 out of 5 stars I'm at the command line, what do I do now? 10 Dec 2012
By Science Geek - Published on Amazon.com
Format:Paperback|Verified Purchase
This book is like the course you wish you could take at college but they don't offer because they are making you learn theoretical things like what a turing machine is, and other things you will likely never use.

This is a great practicel, no-nonsense introduction to Linux for those who are at the command line and want to know what to do next. How do you navigate the file system? What do those weird files like 'bin' and 'dev' and 'boot' mean? How can you change your command line to look cool? How do you write scripts to carry out commands in the command line? What is a pipeline? How the heck does this vi editor work? What is it to 'grep' a file? And on and on. All with practical examples to help you get started fast.

The only reason I give it four, rather than five, stars is because the coverage is a bit shotgun, rather than systematic. On page 45 he will mention something that you won't learn about until page 223. I would rather have a more linear, methodical introduction. However, I think that might well be impossible in a book of this scope. You have to have some nonlinearities in the structure, I just think this has a few too many.
4 of 4 people found the following review helpful
5.0 out of 5 stars The Standard is Raised 6 Mar 2013
By Rambo Tribble - Published on Amazon.com
This new, third edition of Sobell's book brings some enhancements that add to the text's value as both a learning tool and a reference. This has always been a foundation book for those wanting a professional level of familiarity with Linux. The addition of chapters to introduce the Python language and MySQL database serves to offer the reader practical insights into additional Linux-related technologies.

As I implied in my review of the first edition, this is not a volume to be taken lightly. It is a dense read, but is clearly written with concise and direct examples. In other words, it takes some concentration and effort to work through this book, but that effort is rewarded with a clear payoff of knowledge.

Know out front that this is a book about the Linux command line; GUI desktops are barely mentioned. This makes the text's primary audience computer professionals. As *nix professionals know, the command line not only offers quicker, more precise control of the system and its software, but is also far more portable across platforms. This is what allowed Sobell to extend his purview to encompass Mac OS X, in the second edition.

Python is a cross-platform programming language that enjoys growing popularity as a front-end programming language for Linux, leveraging the GUI toolkits, such as Qt or GTK+. The language is also commonly used in web server scripting. The Python coverage adds to Sobell's insightful treatment of the shell, shell scripts and editors already set forth in the volume.

MySQL has long enjoyed popularity as the "go to" database manager on Linux. Perhaps best known for being the "M" in "LAMP" web server setups, it is also commonly used as the back end for GUI programs, such as MythTV.

Of course, 1150 pages, roughly a third of which is reference, doesn't leave time to repeat things or dwell in depth on any one topic. Sobell is often constrained to pages for subjects upon which numerous whole books have been written. With remarkable facility, however, he manages to clearly and directly convey the crux elements of each topic he addresses. This provides the reader with a broad foundation in the basic elements of Linux/OS X system administration.

Finally, while the reference portion of the volume provides much the same information as the venerable on-line manual pages, it does so in a consistent voice with better illustrations and clear examples, something man pages are notoriously spotty on. Indeed, having Sobell's interpretations can help in developing an understanding of the often terse and sometimes arcane documentation the man pages provide.

To sum it up, if you only get one book on the Linux command line and its tools, this should be it.

Disclaimer: Pearson North America provided a copy of the book for this review.
Were these reviews helpful?   Let us know
Search Customer Reviews
Only search this product's reviews

Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
First post:
Prompts for sign-in

Search Customer Discussions
Search all Amazon discussions

Look for similar items by category