pv (Pipe Viewer) is a command line tool to view verbose information about data streamed/piped through it. The data can be of any source like files, block devices, network streams etc. It shows the amount of data passed through, time running, progress bar, percentage and the estimated completion time.
sudo !!
to rerun last command as sudo.
history
can be paired with !5
to run the fifth command listed in history.
I believe it's the fifth oldest - I think !-5
will get you the fifth impost recent, but I was shown that and haven't put it into practice.
The most common usecase I do is something like history | grep docker
to find docker commands I've ran, then use !
followed by the number associated with the command I want to run in history.
Getting cheatsheets via curl cheat.sh/INSERT_COMMAND_HERE
No install necessary, Also, you can quickly search within the cheatsheets via ~
. For example if you copy curl cheat.sh/ls~find
will show all the examples of ls
that use find
. If you remove ~find
, then it shows all examples of ls
.
I have a function in my bash alias for it (also piped into more
for readability):
function cht() { curl cheat.sh/"$1"?style=igor|more }
Not a specific command, but I learned recently you can just dump any executable script into ~/bin and run it from the terminal.
I suffer greatly from analysis paralysis, I have a very hard time making decisions especially if there's many options. So I wrote a script that reads a text file full of tasks and just picks one. It took me like ten minutes to write and now I spend far more time doing stuff instead of doing nothing and feeling badly that I can't decide what to do.
This is because $HOME/bin
is in your $PATH
environment variable. You can add more paths that you'd like to execute scripts from, like a personal git repo that contains your scripts.
I just aliased "sudo pacman -Syu && yay -Syu --aur" to "update" cause I got tired of writing it every day.
Since nobody has said yet, I use screen pretty heavily. Want to run a long running task, starting it from your phone? Run screen to create a detachable session then the long running command. You can then safely close out of your terminal or detach with ctrl a, d and continue in your terminal doing something else. screen -r to get back to it.
Ctrl-r with https://github.com/atuinsh/atuin is amazing. Never forget a command you used ever again.
It's six letters. Can't they just call it zd
or something? Yeah sure, I can use aliases, but why complicate in the first place?
This is most probably a distro-specific aliasing. Tried it on Guix, it does not work:
$ z
bash: z: command not found
$ zoxide
zoxide 0.9.2
....
It's in the official docs for zoxide, you are supposed to use the z alias, and many distros just set it up directly like that. I love doing z notes
from wherever I am.
Hm I wonder, is it really a command? I thought it is just a function of the shell to change the working directory.
Not a command as much as I press the up arrow a lot. I'm.pretty lazy and hitting the up arrow 12 times is easier then retyping a complex rsync command.
Install the fzf integration for ctrl+r fuzzy finding through your entire shell history: