Moving On
So far, we’ve learned the nuts and bolts of creating an easy-to-use, helpful, and flexible command-line application. In this chapter, we’ve seen how exit codes can communicate success or failure to apps that call them. We’ve seen the importance of sending error messages to the standard error stream, and we’ve seen the amazing power of formatting our standard output as if it were destined to be input to another program. We’ve also seen how long-running apps can receive signals from users or other apps. These lessons are truly what makes the command line so infinitely extensible.
If all you did was follow these rules and conventions, you’d be producing great command-line apps. But, we want to make awesome command-line apps, and these ...
Get Build Awesome Command-Line Applications in Ruby 2 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.