DZone
DevOps Zone
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
  • Refcardz
  • Trend Reports
  • Webinars
  • Zones
  • |
    • Agile
    • AI
    • Big Data
    • Cloud
    • Database
    • DevOps
    • Integration
    • IoT
    • Java
    • Microservices
    • Open Source
    • Performance
    • Security
    • Web Dev
DZone > DevOps Zone > 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.

Marco Behler user avatar by
Marco Behler
CORE ·
Aug. 03, 22 · DevOps Zone · Tutorial
Like (1)
Save
Tweet
5.95K 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 (agency) shell

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • What Happened to HornetQ, the JMS That Shattered Records?
  • GraphQL in Enterprise: What It Takes to Build, Deploy, and Monitor a New Enterprise GraphQL Service
  • DevOps Security Checklist for Kubernetes
  • Mobile App Development Trends

Comments

DevOps Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

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

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends:

DZone.com is powered by 

AnswerHub logo