Modern Replacments to POSIX Commands Raw

## File System Navigation & Management

| Old    | Modern                                                                            | Language |
| ------ | --------------------------------------------------------------------------------- | -------- |
| `cat`  | [bat](https://github.com/sharkdp/bat)                                             | Rust     |
| `cd`   | [zoxide](https://github.com/ajeetdsouza/zoxide)                                   | Rust     |
| `du`   | [dust](https://github.com/bootandy/dust), [dua](https://github.com/Byron/dua-cli) | Rust     |
| `find` | [fd](https://github.com/sharkdp/fd)                                               | Rust     |
| `ls`   | [eza](https://github.com/eza-community/eza), [lsd](https://github.com/lsd-rs/lsd) | Rust     |
| `rm`   | [trash](https://github.com/sindresorhus/trash-cli)                                | Go       |
| `time` | [hyperfine](https://github.com/sharkdp/hyperfine)                                 | Rust     |

## System Monitoring

| Old          | Modern                                                                                            | Language         |
| ------------ | ------------------------------------------------------------------------------------------------- | ---------------- |
| `top`/`htop` | [bottom (btm)](https://github.com/ClementTsang/bottom), [gtop](https://github.com/aksakalli/gtop) | Rust, JavaScript |
| `ps`         | [procs](https://github.com/dalance/procs)                                                         | Rust             |

## Text Processing & Search

| Old           | Modern                                                                                                                                      | Language     |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------ |
| `awk`         | [angle-grinder](https://github.com/rcoh/angle-grinder)                                                                                      | Rust         |
| `awk`/`csv`   | [xsv](https://github.com/BurntSushi/xsv)                                                                                                    | Rust         |
| `awk`/`cut`   | [choose](https://github.com/theryangeary/choose)                                                                                            | Rust         |
| `awk`/`cut`   | [hck](https://github.com/sstadick/hck)                                                                                                      | Rust         |
| `awk`/`sed`   | [miller (mlr)](https://github.com/johnkerl/miller)                                                                                          | Go           |
| `diff`        | [delta](https://github.com/dandavison/delta)                                                                                                | Rust         |
| `grep`        | [rg](https://github.com/BurntSushi/ripgrep), [ag](https://github.com/ggreer/the_silver_searcher), [ugrep](https://github.com/Genivia/ugrep) | Rust, C, C++ |
| `sed`         | [sd](https://github.com/chmln/sd)                                                                                                           | Rust         |
| JSON tools    | [jq](https://github.com/stedolan/jq), [jless](https://github.com/PaulJuliusMartinez/jless)                                                  | C, Rust      |
| YAML tools    | [yq](https://github.com/mikefarah/yq)                                                                                                       | Go           |
| Data selector | [dasel](https://github.com/TomWright/dasel)                                                                                                 | Go           |

## Network Tools

| Old              | Modern                                              | Language |
| ---------------- | --------------------------------------------------- | -------- |
| `dig`            | [doggo](https://github.com/mr-karan/doggo)          | Go       |
| `dig`/`nslookup` | [dog](https://github.com/ogham/dog)                 | Rust     |
| `whois`          | [whois.rs](https://github.com/utopiabound/rs-whois) | Rust     |
| `curl`           | [xh](https://github.com/ducaale/xh)                 | Rust     |
| `netstat`        | [bandwhich](https://github.com/imsnif/bandwhich)    | Rust     |
| `ping`           | [gping](https://github.com/orf/gping)               | Rust     |
| DNS monitoring   | [dnspeep](https://github.com/jvns/dnspeep)          | Rust     |
| `httpie`         | [xh](https://github.com/ducaale/xh)                 | Rust     |


## File & Directory Tools

| Old            | Modern                                   | Language |
| -------------- | ---------------------------------------- | -------- |
| `find`         | [fd-find](https://github.com/sharkdp/fd) | Rust     |
| `find`/Various | [fzf](https://github.com/junegunn/fzf)   | Go       |
| Rename tools   | [rnr](https://github.com/ismaelgv/rnr)   | Rust     |

## Text Viewing & Editing

| Old         | Modern                                      | Language |
| ----------- | ------------------------------------------- | -------- |
| `hexdump`   | [hexyl](https://github.com/sharkdp/hexyl)   | Rust     |
| Hex editors | [hx (hex)](https://github.com/sitkevij/hex) | Rust     |

## Other

| Old   | Modern                                      | Language |
| ---   | ---                                         | ---      |
| `git` | [gitui](https://github.com/gitui-org/gitui) | Rust     |

Note: You'll need to `ssh-add ~/.ssh/key_id` for `gitui` to push to remote on macOS

There's [`uutils/coreutils`](https://github.com/uutils/coreutils) which just replaces all GNU Coreutils with Rust reimplemntations 🤷‍♂️ Seems risky. They do note that "some options might be missing or different behavior might be experienced". I have a lot `bash` scripts that depend on stable implementations and won't be using this one (again, they do note that "differences with GNU are treated as bugs"). Maybe one day.

[`fselect`](https://github.com/jhspetersson/fselect) allows you to search your filesystem with SQL-like queries!

`starship` allows you to customize your `bash` (or other) prompts. Written in Rust and is advertized to be [_blazingly fast_](https://starship.rs/).