DEV Community

Ellie Huxtable
Ellie Huxtable

Posted on • Originally published at elliehuxtable.com on

My tools are going Rusty

My tools are going Rusty

Recently I've been taking a look at replacements for common command line tools (and coreutils) - ls, cat, find, grep, etc. I don't really have many issues with the older tools, but I like shiny things. Turns out, people have been rewriting a lot of them in Rust

lsd

lsd is a replacement for ls. It adds some nice colours and icons to your output, like:

My tools are going Rusty

exa

exa is also an ls replacement! It's fairly similar from what I can see, though it doesn't do the fancy font icons. However, it does display some info from Git, and has some other features. Both are worth looking at imo.

My tools are going Rusty

u/milliams and @hoop33 have pointed out that exa will do icons with the --icons flag!

bat

bat is like cat, but with colours, line numbers, and a few other things. It has syntax highlighting, shows git changes, and also automatically pages with less (which I love).

My tools are going Rusty

Sure, cat is intended to con*cat*enate files, but it's also really commonly used to just dump a file to your terminal. bat does that, and makes it pretty :D (it can concat too)

ripgrep

ripgrep is one of the first I installed! It searches code really, really nicely. .gitignore is followed by default, it recurses files and directories by default, and it's very fast. I think the output looks pretty nice too!

My tools are going Rusty
there was also only one todo

There are a few alternatives here, but this is the only one I've used

fd

fd is like find, but in my opinion more convenient. fd .py is fast to type, and fd is also very fast to run. By default .gitignore is followed – a trend I'm very much liking. Regex is supported, and the output has colour!

My tools are going Rusty

dust

dust is a tool I only found very recently, but it tries to make du nice. By default I don't find the output of du to be very helpful, and it's usually combined with at least -h, and maybe some sort as well.

My tools are going Rusty

dust will automatically sort, create graphs, and generally answer the "how the hell am I out of disk space already" question. For when the answer isn't docker images, anyway.

coreutils

Not something I'm using, but there's an attempt to rewrite all of coreutils in Rust going on over here. It's pretty cool and worth a look

That's pretty much it for now! If you have any other suggestions, feel free to contact me on Twitter, or via email

Top comments (1)

Collapse
 
faraazahmad profile image
Syed Faraaz Ahmad

Thank you for sharing this! I'm currently looking for something to create in Rust and I think I'll write a bash command replacement in Rust