CLI apps aren't just for Linux—these 5 run fine on Windows too
Linux has always been a more command-line focused operating system compared to Windows, and if you just put the operating systems side-by-side, that is still true today, for better or worse. However, that doesn't mean that you're without options if you do want command-line tools on Windows.
In fact, there are a few dozen great command-line apps out there. Here are a handful I found that replicated specific functions that I've gotten used to on Linux but aren't great in Windows natively.
ripgrep (rg)
Full-text search that beats Explorer search
If you've ever used findstr or relied on the Windows Explorer search bar to find a specific string of text across dozens of files, you know that the default search can be unbelievably sluggish. ripgrep is a recursive Regex search tool that aims to improve CLI search on Windows.
You'll find it dramatically faster than any native Windows search, and the output is colorized and easy to read. While there is a noticeable learning curve if you aren't familiar with regular expressions, the speed gain makes it worth the effort for anyone digging through code or massive log files. There are also online Regex expression tools that will save you a ton of time if you're not used to working with Regex.
Install it by running the following:
Then search your directories using rg (pattern).
fzf
A fuzzy finder that turns any list into an interactive menu
Windows is a bit clunky if you need to interactively filter while you're typing. Luckily, there is a command-line application designed to address that shortcoming.
Fzf is a general-purpose fuzzy filter that allows you ot filter any text list through ah interactive menu, whether that be the output of dir or a file path you're working with. If you spend a lot of time in the Terminal, it is extremely useful.
It can be installed by running:
bat
A cat replacement
Cat is a command I use a lot on Linux , but the Windows equivalent—type or Get-Content—feels conspicuously worse.
bat acts as a replacement that adds syntax highlighting and line numbers. It also handles automatic paging, so you aren't flooded with a thousand lines of text in a single scroll. That makes it way more useable than type for any kind of source code or configuration files that are longer or more complex.
You can install it using the following command:
Then, just run bat (file.extension) to view the contents of a file.
fd
Finding files without memorizing regex
Ripgrep is fine if you want to use Regex or dig through the text of files, but it is overkill for simple search. UInfortunately, dir /s and where are just clunky. fd is designed to be a fast, more user-friendly alternative that does much the same thing.
In general, I've found it is much faster than the default search, which is important. Searching my C:\\ drive for the partial file name "hellow," which should be relevant to any helloworld files I have present, ran imperceptibly fast.
You can install it with winget install sharkdp.fd
Once it is installed, run fd (search term here)to find any file matching that name.
zoxide
Jumping to any folder you've visited by typing a few letters
The cd command is a fine tool for basic navigation, but it can be tedious if you need to repeatedly type out long, nested paths. Zoxide aims to improve your experience by learning and running the directories that you use most, so they're more quickly accessible.
For example, instead of typing the full path, you could type z projectname, and Zoxide will move you to the most likely match based on your history. It does require a one-time hook added to your profile to function, but the time saved on navigation makes that setup trivial.
Install it by running winget install ajeetdsouza.zoxideand you're off.
A little setup can make these replace your default Windows tools
To get the most out of these tools, you should run them inside Windows Terminal paired with PowerShell 7, or whichever the latest version of PowerShell is. That combination will get you the best possible command-line performance on Windows.
If you prefer user-space installations that don't require administrator rights, Scoop is a viable alternative to winget.
If the syntax bothers you (it bothered me for quite a while), you can add aliases or functions to your $PROFILE so that bat, rg, and whatever other CLI tools others become your default commands. Though you will have to watch out for the fact that PCs other than your own are going to respond very differently than you expect.
I'd recommend starting with a few useful ones to begin with, like ripgrep and fd (they're the ones I've found myself using the most), and then add the rest as they become necessary.
