7 Linux command line tools you didn’t know you need

These commands will make your Linux life easier or, at least, more fun

linux command line tools 1
Credit: Pixabay
Off to work

The Linux world offers an incredible range of free and open source tools to do everything you can think of and lots of things you probably haven’t ever thought of. In this roundup we highlight seven command line utilities you probably haven’t run into before and we’ve got everything from monitoring file system events to running re-attachable ssh sessions to printing banners.

If you’ve got your own favorite command lines tools you’d like to share, drop me a note at feedback@gibbs.com.

linux command line tools 2
Credit: aa-project
asciiview, view any image as ASCII art

I’m not sure that this command is particularly useful but it sure is fun; asciiview is a tool that turns images into ASCII art (hence the name of the project, aa-project, that created asciiview). You can find asciiview in the aview package which, in turn, requires the the imagemagik package.

linux command line tools 3
Credit: tmux.github.io
tmux, making ssh a whole lot better

If you’re ssh’ed into a Linux host and doing something that takes a long time, such as compiling software, and you lose your connection, you’re going to be pretty annoyed because you’re going to have to start all over again. If that’s been your experience, then tmux will be a revelation; tmux is a terminal multiplexer which “lets you switch easily between several programs in one terminal, detach them (they keep running in the background) and reattach them to a different terminal. And do a lot more.” This puts tmux definitively in the “must have” category for Linux sysadmins.

linux command line tools 4
Credit: Mark Gibbs / chkrootkit.org
chrootkit, have you been rooted?

See that list above? That, my sysadmin friend, is your nightmare. It’s a list of all of the root kits, worms, and Loadable Kernel Modules (LKMs) that, should they get into your system, will make your computer as secure as a wet paper bag. One of the best defenses against these malware is chrootkit. Listed in the "Top 100 Network Security Tools" survey, 2006 edition by insecure.Org, chrootkit is one of the best tools for keeping your system clean or, at the very least, knowing when it isn’t.

linux command line tools 5
Credit: Mark Gibbs
figlet, a simple banner generator

For years you’ve seen ASCII banners all over the internet. Ever wondered how they’re generated? The answer is figlet, “a program for making large letters out of ordinary text.” You can render banners in a number of different fonts and if you don’t want to run figlet on your own machine, you can use one of the online Figlet servers and services.

linux command line tools 6
Credit: Mark Gibbs
locate, now where did I put that … ?

How often do you have to dig around your filesystem looking for a specific file which you know the name of, just not where you put it? You need to master the locate command. Included in pretty much any *nix system (although some systems, such as Rad Hat, provide a security-conscious version called slocate which won’t list anything the user does have the rights to access), locate makes it easy to find any file, no matter where it might be in your system.

linux command line tools 7
Credit: calcurse.org
calcurse, CLI calendaring and scheduling

From calcurse.org: “calcurse is a calendar and scheduling application for the command line. It helps keep track of events, appointments and everyday tasks. A configurable notification system reminds users of upcoming deadlines, the curses based interface can be customized to suit user needs and a very powerful set of command line options can be used to filter and format appointments, making it suitable for use in scripts.”

linux command line tools 8
Credit: Pixabay
inotify-tools, tracking filesystem events

Let’s say you have a shell script and you want, for example, to track when a file is closed or modified .. the answer is theinotify-tools package, a C library and a set of command-line programs for Linux providing a simple interface to inotify, “a Linux kernel subsystem that acts to extend filesystems to notice changes to the filesystem, and report those changes to applications” (Wikipedia). I recently used one of the inotify tools,inotifywait, in part 4 of my epic series, Building a Raspberry Pi-powered Barkometer, to detect when a new audio file of my dog not barking was created. This package is incredibly useful when you have asynchronous operations manipulating files and you want to act upon file creation, modification, or deletion events.

RELATED: Ultimate guide to Linux desktop environments