When I first started coding, I was terrified of the terminal.
That blank black screen with the blinking green cursor? It looked like something out...
For further actions, you may consider blocking this person and/or reporting abuse
just do
rm -rf *thanks for the feedback. 😊
Fun aside , Great Post !!
and if computer complains, add ‘sudo’ at the beginning lol
Thanks for the addition James!
I wouldn't call myself an engineer just for using the terminal 😊
The terminal actions I use the most are arrow up, to execute a command in the recent history and
history | grep 'something useful'to find an older command and use an exclamation mark and the number in the history to execute it.If I use a command very frequent I make an alias.
That is the power of working with commands, instead of GUI's.
100%. The re-usability is the best part. Thanks for reading!
Try
z, you'll love it5 Tools That Make My Life Instantly Better 🚀
Athreya aka Maneshwar ・ Oct 7
Use
Ctrl + Shift + F, 10x powerful with inclusion and exclusionIf you don't wanna use VSCode, use ripgrep
ripgrep recursively searches directories for a regex pattern while respecting your gitignore
ripgrep (rg)
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. (To disable all automatic filtering by default, use
rg -uuu.) 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.Dual-licensed under MIT or the UNLICENSE.
CHANGELOG
Please see the CHANGELOG for a release history.
Documentation quick links
Screenshot of search results
Quick examples comparing tools
This example searches the entire Linux kernel source tree (after running
make defconfig && make -j8) for[A-Z]+_SUSPEND, where all matches must be words. Timings were collected on a system…rg "api_key_v2" .Thanks for this, will definitely look into it.
This really captures how small terminal habits can unlock huge efficiency gains. I like the practical command choices here, and it makes me curious which workflows or commands you plan to build on next as your projects grow.
Thanks! I’m glad you liked the practical examples.
For someone who learned to program before command lines ever existed, this is kind of funny to read. For me, in the beginning there was BASIC. Then IBM punch cards. Eventually micro-computers came along and CP/M was invented by Gary Kildall at Digital Research. Interestingly, he created a couple of things for Intel in the 70's called ISIS (an OS) and PL/M, a compiler we used that ran on ISIS. CP/M was very similar to ISIS. And DOS was a close clone of CP/M. My first boss at Intel used to work with Gary and shared some interesting stories about stuff they did when he was there.
I'd heard of Unix but Intel had ISIS and PL/M, and Unix was not something that interested them. I spent a couple of years doing some stuff and ended up writing a dozen different tools that I later learned were standard issue on Unix. In 1985 I went to work with Motorola on the team porting Unix System V R3 to the 68020. My first day on the job, my boss handed me a 2" thick comb-bound book that had all of the man pages printed out for it and said, "Here, go through this and learn Unix." I did, and that's when I learned the Unix version of the tools I had written. Unix was a far cry better than ISIS and CP/M.
I was laid-off of Moto a couple of years later and bought my first PC (1988 or so) and nearly gagged on the limitations of the DOS prompt. It SUCKED compared to the Korn shell (ksh) and all of the standard Unix command tools. A few years later, Windows 3.0 came out, but it was big, fat, slow, and I hated using the mouse. Life was WAY FASTER using a shell.
Those commands you mentioned have all evolved over time -- computers have gotten faster and a lot of work can now be done between keystrokes. Back in the early CP/M and DOS days, every letter took time to process. Filenames were limited to an 8.3 naming format because of how the directory blocks were structured.
Curiously, I'm finding the use of the "command prompt" in AI platforms like deja vu ... it's 2025 and the most advanced software on the planet has started out life using a ... command prompt. And we're stuck with the same problems we had in the 70's and 80's, like the fact that the only way to distribute anything is as SOURCE CODE. Unless you want to turn your prompts into a form of "batch file" called a GPT that only runs on a single platform (as of today). Never mind that there are over 1000 AI platforms now, and more being born every day.
Why are we starting out with dumb command lines, and why is the only way to distribute AI prompts limited to source code? Because nobody working on these was alive before Windows existed!
This industry has been down this road before, a few times. The nice part is that all of the Unix commands I learned in 1986 still work today. And I can still edit files in vi without having to think about it -- thankfully, my fingers still just know the keystrokes I need to type to get a lot of things done, because my memory has forgotten most of them. In fact, it's encouraging that my M4 Mac Mini's Terminal shell still knows what I'm telling it to do. And it still runs the Korn Shell. :)
PS: you should spend some time learning how the 'find' command works...
Thank you so much for this wisdom David! Really informative…
Very helpful
Glad it is!
Some good tips! As well as zoxide, mentioned a few times in comments, I use Ctrl+R ("recursive history search") often and it saves me from having to pipe history output to grep, or hit the up arrow repeatedly. I like telling people about it as a total gamechanger. Just start typing anything from a previous command when the prompt changes, hit Ctrl+R until you find a match, then Enter.
As someone with vim bindings wherever possible, setting readline mode to "vi" is also a nice addition to the command line--though sometimes it's nice to just edit the whole thing in an editor first.
As I curate custom aliases, I like having the "edalias" and "srcalias" aliases in my ~/.bashrc, to respectively edit and source other aliases quickly.
"fd" is typically much faster for recursive finding than the "find" command, and I second the ripgrep recommendation. rsync is worth knowing about as it can be much more efficient at copying, especially between networks or filesystems, and it can even be used as a quicker way to delete lots of small files when you notice long delays--as I did with a mounted NFS path that struggled with bandwidth for directories with lots of small files (node_modules/ and python .venv, for example).
Thank you Marc
rm -theEntireOperatingSystem👍Thank you Joseph
I really like this post
The comment Teleporter and Wildcard are so useful, this makes me wonder how I wasted my time on infinite clickings
Aslo this is my First comment on the Dev.to
I’m honored that this is your first comment on Dev.to! Welcome to the community. 🙌
I totally get that feeling, once you start using the wildcard and tab completion, going back to clicking feels like it takes forever. Glad you found the tips useful!
Let me introduce you Zoxide (github.com/ajeetdsouza/zoxide)
This will make you even faster!
Thank you Mihir, will check it out😊.
Two decisions that are not better than them in life
You don't use right click and even to touch mouse to create a folder. Just press Ctrl+Shift+N and that's all. It's still not as quick, as cli, but much faster.
Thanks Major, someone did mention about zoxide in the comments earlier and I checked it out, learning something new everyday😊…
Stay in the terminal. You'll learn a lot. You're going to discover many more tools as you go along. Instead of suggesting any specific tools here, I leave that up to you to discover. Happy hacking!!! ✌️
Thanks Shrijal!