Modern alternatives to some of the classic Linux commands
When you start learning Linux, you start with a standard set of Linux commands that have been around since the days of UNIX. As you get older as a Linux user, you continue to master the same standard set of commands.
But these standard legacy commands were created decades ago and while they do their intended job, their functionality could be improved and the structure could be simplified.
That’s why there are “alternative” tools that improve upon older UNIX/Linux commands. In this article, I’m going to list some new CLI tools that you could use instead of the good old classic Linux commands.
Please note that you should not rely too much on these alternatives, especially if you manage (or plan to manage) many Linux servers. Legacy Linux commands are found on all Linux distributions, all Linux servers. These modern replacements are more likely to be unavailable on remote servers.
As an individual, you can always explore these new tools that could help you be more efficient.
Everything is fine ? Let’s see if you can find your next favorite CLI tool here.
HTTPie: alternative to wget and curl
When it comes to downloading files in a terminal, wget and curl are the two most common tools. Interestingly, not all distros have curl, wget installed by default.
HTTPie does the same job but in a more human-like way. Got colorized and formatted output which makes it easy to understand and debug.
Bat: alternative to cat
The cat command may be one of the first commands you learn. It does the job of displaying the contents of small text files.
But the bat command takes it to the next level by adding features like syntax highlighting and Git integration. Layout option is also available.
ncdu: alternative to the du command
The du command in Linux is used to check the size of a directory. It’s not a very simple command and it certainly doesn’t give very good output by default.
Compared to this, ncdu is much better than providing the relevant information at first glance.
There are other features here, such as showing disk usage in graphs, sorting the display, and even interactively deleting directories.
It is based on ncurses and therefore the ‘nc’ is appended to ‘du’. A similar CLI tool is gdu which is a replacement for written in Go which gives it a performance boost.
Htop: alternative to the top command
The top command works as a task manager in the Linux terminal. It’s a good tool for looking at running processes and resource consumption, but understanding and using the top command can be tricky.
Htop, on the other hand, has a nice and colorful output and a more intuitive interface than the top command. You can scroll vertically and horizontally, graphically configure the information displayed, etc. You can interactively kill processes right from the htop exit screen.
fd: alternative to the find command
The find command is one of the most powerful and widely used Linux commands. It is impossible to imagine that a system administrator can survive without using the find command.
But the find command has a strange structure and it may be slow if you perform a lot of find operations.
A better and faster alternative is the fd command. Written in Rust, fd is simpler and faster than its old competitor.
exa: alternative to the ls command
The exa CLI tool adds some functionality while listing the contents of directories. It has better defaults and uses colors to distinguish file types and metadata. exa can also display a file’s extended attributes, as well as standard file system information such as a file’s inode, block count, and various dates and times.
You can use the tree view to see the directory structure. It also has built-in Git support to see what files have been modified, committed and staged, etc.
Duf: alternative to the df command
The df command in Linux is used to check disk space. Although it works most of the time, an easier and better alternative is duf, a tool written in Go.
It gives you an overview of all mounted devices which is easy to understand. You also have the option of specifying a directory/file name and checking free space for that mount point.
With duf, you can sort the output, list indoe information, and even save the output as JSON.
Tldr: alternative to the man command
I know the purist says there is no alternative to man pages in Linux. But man pages can sometimes be too detailed and complicated to read and understand.
Enter tldr. TLDR is popular Internet jargon for “too long didn’t read”. And that’s the idea behind the creation of tldr. If you find the man pages too long to read, tldr simplifies this by providing practical examples of the command.
Neovim: Alternative to Vim
Hope I’m not committing blasphemy here but a better Vim isn’t Emacs, it’s Neovim.
Years ago, Vim appeared as an improvement on the old Vi editor. A few years ago, Neovim had the idea to extend Vim as an IDE.
It adds modern terminal features like cursor styling, focus events, bracket pasting, and more. with an integrated terminal emulator. The best thing is that you don’t need to unlearn Vim to start using Neovim.
Again, these alternative commands should not be considered a direct replacement, especially if you are managing many Linux systems. You cannot find and install them on all systems. They are only good if you have full control over your Linux machine(s).
Keeping that aside, did you find any good alternative command line tools in this list? Which is it? Also, do you know of any other tools that could “replace” old UNIX commands? Why not share it with us in the comments section?