Linux Terminal Commands

These are some useful Linux Terminal Commands for productivity: Commands using ls etc. use to ls -ltr list files in reverse modification history order with details. `ls -ltr tail -n 5` `ls head -n 5` rename 's/original/new/' * To rename all filenames and directories containing “original” string to “new” string. To recursively do this in sub-directories, use **/*. See: here and here for dir in */; do mkdir -- "$dir"/{tmp1,foo,bar,qux}; done To create directories within sub-directories in one go!...

 May 9, 2021  •   2 min  •   344 words  •   Suyog Garg

Prettify git log

Disclaimer: Based on Google Gemini-Pro prompts! Let’s face it—the default git log output is a massive wall of plain text that is painful to scan. When you are working with a team, tracking down who did what and when can feel like reading a raw terminal dump. Today, we are going to fix that. We will transform your Git log into an interactive, beautifully structured, and color-coded masterpiece tailored specifically for your terminal workspace....

 July 8, 2026  •   3 min  •   448 words  •   Suyog Garg

Making PyTorch model training super-fast on cuda

DISCLAIMER: Made with Google Gemini-Pro prompts. I restructured all my Python installation in the system and have now committed to use only Anaconda conda environments to manage my Pythons. Below are some steps I followed to clean my directories! A deep dive into fixing OpenMP runtime conflicts, eliminating TorchDynamo graph breaks, and breaking the silent HDF5 global process lock for Gravitational-Wave VAE models. The Starting Point: An Absolute Stall When training heavy gravitational-wave parameter estimation and population models (utilizing libraries like bilby and gwpopulation), we hit a wall....

 June 19, 2026  •   8 min  •   1537 words  •   Suyog Garg

`timg` for Terminal image rendering

Disclaimer: Based on Google Gemini-Pro prompts! As researchers, data scientists, and developers working on remote HPC clusters or cloud servers, we live in the terminal. But dealing with visual data—like checking a training loss plot, verifying a generated image, or inspecting a corner plot from an MCMC run—usually forces us out of our flow. Traditionally, you have three painful choices: scp or rsync the image back to your local machine. Suffer through lagging X11 forwarding (ssh -X)....

 June 16, 2026  •   8 min  •   1633 words  •   Suyog Garg

Version control with `git` tags

Disclaimer: Based on Google Gemini-Pro prompts! Managing version numbers can get messy when working solo. If you accidentally created development branches named after version numbers (like v0.1.0) or mixed up your tag formats, you can easily clean up your history and establish a friction-free release workflow. The Goal Convert version branches into permanent Git tags, format historical versions cleanly (v0.0.1 instead of v0.1), and establish a streamlined process for future releases....

 June 16, 2026  •   3 min  •   429 words  •   Suyog Garg