DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • iRODS: An Open-Source Approach to Data Management in Large-Scale Research Environments
  • Elevate Your Terminal Game: Hacks for a Productive Workspace
  • Understanding Git
  • Top Three Methods for iOS Development on Linux

Trending

  • Ujorm3: A New Lightweight ORM for JavaBeans and Records
  • Detecting Bugs and Vulnerabilities in Java With SonarQube
  • When Snowflake Lies to You: Understanding False Failures in dbt Pipelines
  • Using LLMs to Automate Data Cleaning and Transformation Pipelines
  1. DZone
  2. Coding
  3. Tools
  4. 7 Great Terminal/CLI Tools Not Everyone Knows

7 Great Terminal/CLI Tools Not Everyone Knows

Do you frequently work with the CLI? Whether you use Windows, macOS, or Linux, in this video, learn about 7 tools that may be unfamiliar to you.

By 
Marco Behler user avatar
Marco Behler
·
Aug. 03, 22 · Tutorial
Likes (7)
Comment
Save
Tweet
Share
18.2K Views

Join the DZone community and get the full member experience.

Join For Free

Do you work frequently work with the CLI? Whether you use Windows, macOS, or Linux, in the video below, you'll learn 7 tools that I frequently use: exa, Clink, rg and rga, plocate, bat, jq, and f**k.

What’s in the Video?

The video gives a short overview of how to use the tools mentioned above work. In order of appearance:

  1. exa is a modern replacement for the venerable file-listing command-line program ls that ships with Unix and Linux operating systems, giving it more features and better defaults. It uses colors to distinguish file types and metadata. It knows about symlinks, extended attributes, and Git. And it’s small, fast, and just one single binary - written in Rust.
  2. Clink combines the native Windows shell cmd.exe with the powerful command line editing features of the GNU Readline library, which provides rich completion, history, and line-editing capabilities. Readline is best known for its use in the Unix shell Bash, the standard shell for Mac OS X, and many Linux distributions. You'll get context-sensitive auto-completion, a nice color scheme, keyboard shortcuts, from history search to undo, navigation shortcuts, and extensive scripting capabilities.
  3. ripgrep is a line-oriented search tool that recursively searches the current directory for a regex pattern. By default, ripgrep will respect gitignore rules and automatically skip hidden files/directories and binary files. ripgrep has first-class support on Windows, macOS, and Linux, with binary downloads available for every release. ripgrep is similar to other popular search tools like The Silver Searcher, ack, and grep. Even more, ripgrep comes with an addition called ripgrep-all, which allows you to grep for text in various filetypes, from PDF, to docx and even movies (if they have subtitles).
  4. plocate is a locate(1) based on posting lists, completely replacing mlocate with a much faster (and smaller) index. It is suitable as a default locate on your system. In short: Want to find your files in lightning speed? Use plocate.
  5. bat is a cat clone with syntax highlighting and Git integration. For example: Whenever you cat an .json file, cat gives you the output of said file, in black-and-white, without line numbers and without any pretty printing. Bat, by default, does all of that for you, so you'll be able to look at a nice, pretty printed and colored JSON file.
  6. jq is a lightweight and flexible command-line JSON processor.  How can you use it? Think of quick one-off job on the command line. Say you want to quickly curl some data from an API endpoint and then "do something" with the resulting JSON. Of course, you could fire up an IDE and your favorite programming language to transform that JSON to something useful. Or, you use JQ, learn a bit of its syntax and do everything in a single command line.
  7. thef**k is a magnificent app inspired by an @liamosaur tweet that corrects errors in previous console commands. Say you mistype "git brnch:" thef**k will automatically suggest you to rerun the command as "git branch." This is the same for commands that need sudo, like installing packages through a package manager, and many other supported commands.


Git Mac OS X MacOS Metadata Syntax highlighting Unix shell Linux (operating system) Locate (Unix) Release (computing) shell

Opinions expressed by DZone contributors are their own.

Related

  • iRODS: An Open-Source Approach to Data Management in Large-Scale Research Environments
  • Elevate Your Terminal Game: Hacks for a Productive Workspace
  • Understanding Git
  • Top Three Methods for iOS Development on Linux

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook