Which Linux command or utility is simple, powerful, and surprisingly unknown to many people or used less often?
This could be a command or a piece of software or an application.
For example I’m surprised to find that many people are unaware of Caddy, a very simple web server that can make setting up a reverse proxy incredibly easy.
Another example is fzf. Many people overlook this, a fast command-line fuzzy finder. It’s versatile for searching files, directories, or even shell history with minimal effort.
Underrated? I’d say lftp is the best FTP command line client there is. And Midnight Commander is a very very good file browser. I don’t see either praised enough.
The terminal-based file browser space is so filled today but for my part I love what vifm has done for the dual-pane midnight commander concept - it’s the same basic idea, uses (somewhat) vim-like bindings by default and is super extensible.
Lftp is fast. Those parallel chunked downloads are not a joke
Great call out! I first used ftp about 30 years ago, and lftp has been my go to for about the last decade. I rarely need it anymore, but I still use it for quickly transferring files with my homebrew switch.
Did you know it can connect to HTTP directory listings and do the same things it does over S/FTP?
dust: better version ofdu. There’s alsodiskonautwhich is an interactive tool.losetupit’s useful for dealing with virtual disk images. like a real physical hard disk, but it’s a file on the computer. you can mount it, format it, and write it to a real physical disk.
it’s sometimes used with virtual machines, with iso images, or when preparing a bootable disk.
Pandoc.
Converts any rich text format to any other.
socat- connect anything to anythingfor example
socat - tcp-connect:remote-server:12345socat tcp-listen:12345 -socat tcp-listen:12345 tcp-connect:remote-server:12345xargs
Very true. I used to do magic with xargs when working as a sysadm. Also a good way to mess up on a grand scale. Ask me how I know.
So, how do you know?
By not testing it properly before running it over the whole file system resulting in a few hours of extra work cleaning up the mess I made.
nmap *your_local_ip_address*for example
nmap 192.168.1.43/24will show you what devices are connected to the local network, and what ports are open there. really useful, for example, when you forgot the address of your printer or raspi yet again.you can also use it to understand what ports on your computer are open from an attacker’s perspective, or simply to figure out what services are running (ssh service).
I use fuck to fix typos
If you’d map it to just
fit’s even more handyYou gain efficiency, but lose fun
this just reminds me of
pleasewhich runs the previous command withsudosudo !!Will also run the previous command with sudo, fwiw.
I’m not sure how underrated it is but the exec feature in
findis so useful, there are so many bulk tasks that would just be incredibly difficult otherwise but instead are just one linebcIt’s a simple command line calculator! I use it all the time.
Very useful for shell scripts that need to do maths as well. I use it to make percentages when stdout has values between 0.0 and 1.0
kde connect
vd(VisiData) is a wonderful TUI spreadsheet program. It can read lots of formats, like csv, sqlite, and even nested formats like json. It supports Python expressions and replayable commands.I find it most useful for large CSV files from various sources. Logs and reports from a lot of the tools I use can easily be tens of thousands of rows, and it can take many minutes just to open them in GUI apps like Excel or LibreOffice.
I frequently need to re-export fresh data, so I find myself needing to re-process and re-arrange it every time, which visidata makes easy (well, easier) with its replayable command files. So e.g. I can write a script to open a raw csv, add a formula column, resize all columns to fit their content, set the column types as appropriate, and sort it the way I need it. So I can do direct from exporting the data to reading it with no preprocessing in between.
paste. I don’t think a lot of people know this command, but it can be handy at times
grep goes crazy if you know your regex
I was expecting this one.
I can never get grep to work consistently on Mac and Linux. Now, ripgrep OTOH…
That’s because Macs generally use BSD-based command line tools instead of GNU ones. You have to do a lot of Homebrew jiggery-pokery to approximate a GNU environment. Know Your Tools: Linux (GNU) vs. Mac (BSD) Command Line Utilities
Alas, doesn’t fit my purpose since it requires action by the script user. I usually just use perl in those situations
I love flexibility with regex, personally I use ugrep as it also allows utilization of boolean and/or/not logic for more complicated searches.
awkdeleted by creator
Came here to say both of these things. (Awk and “> simple”.)
To be totally honest, I don’t think awk is any more complicated than something like grep, it’s just that regular expressions get used more often so they’re typically more familiar. In the same way that programming languages with c-like syntax (like Java and C#) often feel easier than ones that don’t (like Haskell and Clojure).
Awk is a turing complete programming language.









