Welcome!

Linux Containers Authors: Liz McMillan, Elizabeth White, Yeshim Deniz, Automic Blog, Pat Romanski

Related Topics: Linux Containers

Linux Containers: Article

Book Rookery: Wicked Cool Shell Scripts

101 different, fun, and useful shell scripts

In this installment of the Book Rookery, Martin C. Brown speaks with Dave Taylor, author of Wicked Cool Shell Scripts, about all the fun things you can do with shell scripts, whether you're running Linux, Mac OS X, or even a mainstream Unix system.

Can you tell us more about the book and what's inside?

For years I've picked up different programming books and lamented that they weren't fun or interesting. In the shell scripting world, it's even worse, with book after book talking about how to use an "if" statement, but none containing fun, hip, edgy, and even kind of wacky shell scripts that demonstrate all sorts of useful constructs and capabilities, but focus on being interesting. That's exactly what I've done with my book, though. I skip all the how-to and instructional material - after all, there's tons of stuff online nowadays anyway - and jump straight into the content, into listing and explaining 101 different, fun, and useful shell scripts.

What's your favorite script in the book?

Well, I had the most fun figuring out how to get the hangman game (#100) to work in as few lines as possible. A flashback to my early programming life when "toss in more RAM" wasn't the solution to a bloated app! In terms of scripts I use every day, the Mac OS X "titleterm" script (#96) is just part of my everyday activity, and I really like the concepts embodied in the bestcompress script (#38) too.

What's the biggest challenge about using shell scripts?

At the end of the day, shell scripts can only be so sophisticated. My rule of thumb is that if the script is growing to be more than 200 lines or so, it's probably time to migrate to a more sophisticated programming environment. For me, it's just about always a switch into C, but I'm an old-time Unix guy so C is second nature to me.

Shell scripts? Why wouldn't people use Perl?

Perl is a viable option, but what I think is really great about shell scripts is that everyone who uses Unix, Linux, or the terminal in Mac OS X already has 90% of the skills and expertise needed to begin creating their own shell scripts. Further, every line you type into a shell script can be easily tested at a command line, so I'll often start out a script by building a longer and longer pipe of commands, then eventually just copy and paste the entire command sequence into a file and poof a new script is born.

There are lots of different Unix-related books - including a number that you've written - and shell script books. Why another one?

Yes, I admit, I've written Teach Yourself Unix in 24 Hours, Teach Yourself Unix System Administration in 24 Hours, and Unix: Man or Beast?. No, wait. Only the first two titles. Sorry.

More seriously, there are lots of books on Unix and Unix-related topics, but they almost all focus on being either dry reference works (five lines and a table of flags for all 1,600 commands included with your OS, yawn) or on step-by-step tutorials (both of my books fall into this category, the "12,158 simple steps to becoming a Unix expert" style), but there are way too few books that are fun and entertaining, choosing to teach through example and through sheer enthusiasm for the environment. Wicked Cool Shell Scripts endeavors to fill this gap and so far, based on the tremendous response from the Unix and open source community, it's hitting its mark.

What's your take on the SCO lawsuit?

I've always wondered about people who put more energy into dragging innovators back to the status quo than in innovating themselves, and I think that's exactly what the SCO team is doing. Last I checked, they weren't doing anything interesting or innovative with Unix, so why would they want to slow the rest of us down? I won't go into conspiracy theories, but there sure are a lot of curious coincidences in this situation. Ultimately, though, I'd like to see the open source community cut SCO off at the knees: work with legal people to identify exactly what code SCO believes is questionable and then have swarms of programmers en masse toss that code out of the Linux code base and rewrite all of it "black box" so that SCO is left holding... nothing.

And in the meantime, innovative work with GNOME, the new kernel, autodiscovery of network resources, further levels of compatibility with samba, and other innovations are the lifeblood of our community, and they're what I'd like to see everyone continue to focus on developing.

Your book also covers Mac OS X: What OS do you run on your main computer, and how Unix-y do you think Mac OS X really is, when compared to a distro like Fedora?

I have always been a huge fan of Macs, I have to admit. I remember many, many years ago when I first used a 512K Mac (which was loaned to me by the Whole Earth ‘Lectronic Link, of all groups) and realized that it was a whole new way of looking at usability. This was after years of HP's Windex and X (and I remember when Motif was state of the art, gawd!), but it was so clearly superior... I've been a die-hard Mac person ever since and now I have four Macs in my office, including a brand-new dual G5 system. They not only run Mac OS X but my Terminal window is always open too. It's a fabulous pairing of all the power and capabilities of Unix with the GUI and graphical good karma of Aqua, the Mac OS X graphical environment. It rocks!

And finally, what editor do you like, emacs or vi?

Oh boy. I'm a "vi" person and have been forever. Thank you Bill for your work in this area, even if it was oh, so many years ago. However, kudos to the vim team too: vim finally fixes all the annoying limitations of vi.

About the Author
Dave Taylor is author of 15 computer books, including Learning Unix for Mac OS X Panther and Creating Cool Web Sites. You can learn more about Wicked Cool Shell Scripts - and read through the scripts - online at www.intuitive.com/wicked.

More Stories By Martin C. Brown

Martin C. Brown is a former IT director with experience in cross-platform integration. A keen developer, he has produced dynamic sites for blue-chip customers, including HP and Oracle, and is the technical director of Foodware.net. Now a freelance writer and consultant, MC, as he is better known, works closely with Microsoft as an SME; has a regular column on both ServerWatch.com and IBM's DeveloperWorks Grid Computing site; is a core member of the AnswerSquad.com team; and has written books such as XML Processing with Perl, Python and PHP, and the Microsoft IIS 6 Delta Guide.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


@ThingsExpo Stories
In his keynote at @ThingsExpo, Chris Matthieu, Director of IoT Engineering at Citrix and co-founder and CTO of Octoblu, focused on building an IoT platform and company. He provided a behind-the-scenes look at Octoblu’s platform, business, and pivots along the way (including the Citrix acquisition of Octoblu).
Multiple data types are pouring into IoT deployments. Data is coming in small packages as well as enormous files and data streams of many sizes. Widespread use of mobile devices adds to the total. In this power panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists will look at the tools and environments that are being put to use in IoT deployments, as well as the team skills a modern enterprise IT shop needs to keep things running, get a handle on all this data, and deli...
In his opening keynote at 20th Cloud Expo, Michael Maximilien, Research Scientist, Architect, and Engineer at IBM, will motivate why realizing the full potential of the cloud and social data requires artificial intelligence. By mixing Cloud Foundry and the rich set of Watson services, IBM's Bluemix is the best cloud operating system for enterprises today, providing rapid development and deployment of applications that can take advantage of the rich catalog of Watson services to help drive insigh...
DevOps is often described as a combination of technology and culture. Without both, DevOps isn't complete. However, applying the culture to outdated technology is a recipe for disaster; as response times grow and connections between teams are delayed by technology, the culture will die. A Nutanix Enterprise Cloud has many benefits that provide the needed base for a true DevOps paradigm.
With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend @CloudExpo | @ThingsExpo, June 6-8, 2017, at the Javits Center in New York City, NY and October 31 - November 2, 2017, Santa Clara Convention Center, CA. Learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.
Five years ago development was seen as a dead-end career, now it’s anything but – with an explosion in mobile and IoT initiatives increasing the demand for skilled engineers. But apart from having a ready supply of great coders, what constitutes true ‘DevOps Royalty’? It’ll be the ability to craft resilient architectures, supportability, security everywhere across the software lifecycle. In his keynote at @DevOpsSummit at 20th Cloud Expo, Jeffrey Scheaffer, GM and SVP, Continuous Delivery Busine...
SYS-CON Events announced today that WineSOFT will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Based in Seoul and Irvine, WineSOFT is an innovative software house focusing on internet infrastructure solutions. The venture started as a bootstrap start-up in 2010 by focusing on making the internet faster and more powerful. WineSOFT’s knowledge is based on the expertise of TCP/IP, VPN, SSL, peer-to-peer, mob...
SYS-CON Events announced today that EARP Integration will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. EARP Integration is a passionate software house. Since its inception in 2009 the company successfully delivers smart solutions for cities and factories that start their digital transformation. EARP provides bespoke solutions like, for example, advanced enterprise portals, business intelligence systems an...
SYS-CON Events announced today that delaPlex will exhibit at SYS-CON's @CloudExpo, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. delaPlex pioneered Software Development as a Service (SDaaS), which provides scalable resources to build, test, and deploy software. It’s a fast and more reliable way to develop a new product or expand your in-house team.
SYS-CON Events announced today that Carbonite will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Carbonite protects your entire IT footprint with the right level of protection for each workload, ensuring lower costs and dependable solutions with DoubleTake and Evault.
SYS-CON Events announced today that Progress, a global leader in application development, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Enterprises today are rapidly adopting the cloud, while continuing to retain business-critical/sensitive data inside the firewall. This is creating two separate data silos – one inside the firewall and the other outside the firewall. Cloud ISVs oft...
SYS-CON Events announced today that Outscale will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Outscale's technology makes an automated and adaptable Cloud available to businesses, supporting them in the most complex IT projects while controlling their operational aspects. You boost your IT infrastructure's reactivity, with request responses that only take a few seconds.
As cloud adoption continues to transform business, today's global enterprises are challenged with managing a growing amount of information living outside of the data center. The rapid adoption of IoT and increasingly mobile workforce are exacerbating the problem. Ensuring secure data sharing and efficient backup poses capacity and bandwidth considerations as well as policy and regulatory compliance issues.
SYS-CON Events announced today that Cloud Academy will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Cloud Academy is the industry’s most innovative, vendor-neutral cloud technology training platform. Cloud Academy provides continuous learning solutions for individuals and enterprise teams for Amazon Web Services, Microsoft Azure, Google Cloud Platform, and the most popular cloud computing technologies. Ge...
DevOps at Cloud Expo – being held October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA – announces that its Call for Papers is open. Born out of proven success in agile development, cloud computing, and process automation, DevOps is a macro trend you cannot afford to miss. From showcase success stories from early adopters and web-scale businesses, DevOps is expanding to organizations of all sizes, including the world's largest enterprises – and delivering real r...
The 21st International Cloud Expo has announced that its Call for Papers is open. Cloud Expo, to be held October 31 - November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA, brings together Cloud Computing, Big Data, Internet of Things, DevOps, Digital Transformation, Machine Learning and WebRTC to one location. With cloud computing driving a higher percentage of enterprise IT budgets every year, it becomes increasingly important to plant your flag in this fast-expanding busin...
With major technology companies and startups seriously embracing Cloud strategies, now is the perfect time to attend @CloudExpo | @ThingsExpo, June 6-8, 2017, at the Javits Center in New York City, NY and October 31 - November 2, 2017, Santa Clara Convention Center, CA. Learn what is going on, contribute to the discussions, and ensure that your enterprise is on the right path to Digital Transformation.
SYS-CON Events announced today that Interoute has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Interoute is the owner operator of Europe's largest network and a global cloud services platform, which encompasses over 70,000 km of lit fiber, 15 data centers, 17 virtual data centers and 33 colocation centers, with connections to 195 additional partner data centers. Our full-service Unifie...
SYS-CON Events announced today that Progress, a global leader in application development, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Enterprises today are rapidly adopting the cloud, while continuing to retain business-critical/sensitive data inside the firewall. This is creating two separate data silos – one inside the firewall and the other outside the firewall. Cloud ISVs ofte...
SYS-CON Events announced today that delaPlex will exhibit at SYS-CON's @ThingsExpo, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. delaPlex pioneered Software Development as a Service (SDaaS), which provides scalable resources to build, test, and deploy software. It’s a fast and more reliable way to develop a new product or expand your in-house team.