As Ruby pro David Copeland explains, writing a command-line application that is self-documenting, robust, adaptable and forever useful is easier than you might think. Ruby is particularly suited to this task, since it combines high-level abstractions with "close to the metal" system interaction wrapped up in a concise, readable syntax. Moreover, Ruby has the support of a rich ecosystem of open-source tools and libraries.
Ten insightful chapters each explain and demonstrate a command-line best practice. You'll see how to use these tools to elevate the lowliest automation script to a maintainable, polished application.
You'll learn how to use free, open source parsers to create user-friendly command-line interfaces as well as command suites. You'll see how to use defaults to keep options simple for everyday users, while giving advanced users options for more complex tasks.
There's no reason a command-line application should lack documentation, whether it's part of a help command or a man page; you'll find out when and how to use both. Your journey from command-line novice to pro ends with a look at valuable approaches to testing your apps, and includes some fun techniques for outside-the-box, colorful interfaces that will delight your users.
With Ruby, the command line is not dead. Long live the command line.
What You Need:
All you'll need is Ruby, and the ability to install a few gems along the way. Examples written for Ruby 1.9.2, but 1.8.7 should work just as well.
Learning the bash Shell, 3rd Edition This refreshed edition serves as the most valuable guide yet to the bash shell. It's full of practical examples of shell commands and programs guaranteed to make everyday use of Linux that much easier. Includes information on key bindings, command line editing and processing, integrated programming features, signal handling, and much more!
Linux: The Complete Reference, Sixth Edition The Linux operating system has become one of the major operating systems in use today, bringing to the PC all the power and flexibility of a Unix workstation as well as a complete set of Internet applications and a fully functional desktop interface. This book is designed not only to be a complete reference on Linux, but also to provide clear and... TCP/IP For Dummies (Computer/Tech) Packed with the latest information on TCP/IP standards and protocols
TCP/IP is a hot topic, because it's the glue that holds the Internet and the Web together, and network administrators need to stay on top of the latest developments. TCP/IP For Dummies, 6th Edition, is both an introduction to the basics for...
Ubuntu Linux Toolbox: 1000+ Commands for Ubuntu and Debian Power Users
This updated bestseller from Linux guru Chris Negus is packed with an array of new and revised material
As a longstanding bestseller, Ubuntu Linux Toolbox has taught you how to get the most out Ubuntu, the world's most popular Linux distribution. With this anticipated new edition, Christopher Negus returns with a...
Managing and Using MySQL (2nd Edition)
Programmers have always put together software on their own time to "scratch their own itches." Until the 1990s, however, programmers lacked distribution mediums for mass marketing their creations. The Internet changed that and gave life to grass-roots software distribution philosophies that have challenged those of the software...