What are your most liked alias for long commands or just to give them better names.
Mine are:
alias load="source .load.sh"
alias eload="$EDITOR .load.sh"
alias gpush="git push"
alias gadd="git add --all"
alias gcommit="git commit -m "
alias gst="git status -s"
alias gpull="git pull"
mkcd() { mkdir -p “$1” && cd “$1”; }
Make a directory and immediately cd into it. I rarely make a directory and not cd into it.
Uuuuh needed this one so many times.
My app keeps crashing. That’s the older version of my alias.
mkcd() { mkdir -p “$1” && cd “$1”; }
alias weather=‘curl wttr.in’
I found a function version of this version somewhere. Same thing except it defaults to my local area but can be overridden if you specify a different zip code.
weather() { if [ $(command -v curl) ]; then if ! (($#)); then curl wttr.in/44113 else curl wttr.in/$1 fi else echo "curl not installed. Aborting." fi }
I use this function to launch GUI apps from the shell without occupying that shell or cluttering it with their output:
nown() { if [ -n "$1" ] then nohup $@ &> /dev/null & disown else echo "Don't give me a null command dumbass." fi }
I maybe will steal that for myself.
I always set these because I’ve been burned too many times:
Turn on interactive mode for dangerous commands
alias cp='cp -iv' alias mv='mv -iv' alias rm='rm -iv'
alias fuck='sudo $(fc -ln -1)'
Just use
sudo !!
yeah, I could do that. Kinda prefer to use my alias anyway as the expletive is almost always the first word that comes to mind when I forget to sudo something
Can’t argue with that but it reminds me of thefuck which is similar but does more
thanks for that link!! I’m going to try it out :)
Technically not aliases but I have these in my ~/.bash_aliases so…
bind ‘“\e[A”: history-search-backward’
bind ‘“\e[B”: history-search-forward’Type a few letters and press up/down arrow to scroll through matching history entries.
Also…
alias s=“cd -”
It’s like Alt+Tab for CLI.
alias ta="tmux attach -t"
alias ..='cd ..'
My variant (u mean “up” in my head)
alias u ='cd ..' alias uu ='cd ../..' alias uuu='cd ../../..'
AmigaOS style!
alias ll=“ls - l”
My most-used, by far, for decades.
For just a second I thought this was Loss
This and
alias la="ls -lhA"
In addition to this, I have
lat
&las
with-t
&-s
sorting added respectively.
Not exactly an alias but a short script. First, get git-revise which is a replacement for
git rebase
, and fzf if for some reason you don’t have it yet. Then make a script in your~/.local/bin
calledgit-f
or whatever you’d like:#!/bin/bash REF=${1:-origin/main} # adjust to your favorite trunk branch name COMMIT=$(git log --pretty=oneline ${REF}.. \ | fzf --preview "git show -p --stat {+1}" | cut -d' ' -f1) if [ -n "$COMMIT" ]; then exec git revise "$COMMIT" else exit 1 fi
Now hack away in a branch, make some commits, and at some point you will realize you want to modify an earlier commit. Use
git add -p
to add the relevant lines, but then instead of making a fixup commit just typegit f
and pick the target commit from the list.alias upd=“yay -Syu --devel”
alias cleanup=“yay -Qdtq | yay -Rns-”
alias mirror=“sudo reflector --verbose --country ‘United States’ --protocol https --latest 15 --sort rate --save /etc/pacman.d/mirrorlist && sudo eos-rankmirrors”
become="sudo su -" pb="ansible-playbook"
Interesting, git do support aliases too. “git st” etc What is .load.sh?
I mostly write my environment and aliases which are only ment to be used for a project by creating a file called .load.sh. It is mostly just things like alias run=“python main.py” or something
alias et='emacsclient -ct' alias ec='emacsclient -cn' alias make='make --warn-undefined-variables'
For git and working with a mix of master and main default branch repos my favourite is
gsm='git switch $(git_main_branch)'
to switch back to main/master