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”; }
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'
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 ..='cd ..'
My variant (u mean “up” in my head)
alias u ='cd ..' alias uu ='cd ../..' alias uuu='cd ../../..'
AmigaOS style!
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 }
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 :)
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/masteralias et='emacsclient -ct' alias ec='emacsclient -cn' alias make='make --warn-undefined-variables'
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"
become="sudo su -" pb="ansible-playbook"
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”
dc=“docker-compose” saves me soooo much time!
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
Selection of my fish abbreviations for comfy terminal creatures:
# MISC ----------------- abbr -a la 'exa -la' abbr -a p 'python' abbr -a v 'nvim' abbr -a rmd 'rm -rf' abbr -a feh 'feh --scale-down -d' abbr -a ka 'doas killall' abbr -a fp 'ffplay' abbr -a ff 'firefox' abbr -a tree 'exa -T' abbr -a libver 'dpkg -l | grep' abbr -a ex 'chmod +x' # specific file and directory based abbr -a notes 'nvim ~/.vimwiki/index.md' abbr -a idir 'cd ~/some/important/dir' abbr -a fishconf 'nvim ~/.config/fish/config.fish' abbr -a vimconf 'nvim ~/.config/nvim/init.vim' abbr -a i3conf 'nvim ~/.config/i3/config' # PACMAN --------------- abbr -a pin 'doas pacman -S' abbr -a pun 'doas pacman -Rns' abbr -a pss 'pacman -Ss' abbr -a pls 'pacman -Qd' abbr -a aurls 'paru -Qm' abbr -a pct 'pacman -Q | wc -l' abbr -a syu 'paru -Syu' abbr -a pcl 'paccache -r -k 1; paru --cc;' abbr -a pfd 'pacman -Qs' # GIT ------------------ abbr -a ga 'git add -A; git status' abbr -a gr 'git reset' abbr -a gd 'git diff' abbr -a gc 'git commit -m' abbr -a gdc 'git diff HEAD~0 --stat' abbr -a gl 'git log' abbr -a gb 'git branch' abbr -a gp 'git push origin' abbr -a gch 'git checkout' abbr -a gam 'git commit --amend - m' abbr -a gcl 'git clone' # RUST ----------------- abbr -a cc 'cargo clippy --all-features' abbr -a ccc 'cargo check' abbr -a cb 'cargo build' abbr -a cr 'cargo run' abbr -a cbr 'cargo build --release' abbr -a crr 'cargo run --release' abbr -a ct 'cargo test' abbr -a ctt 'cargo tarpaulin --ignore-tests --skip-clean' abbr -a bacon 'bacon clippy-all -w' abbr -a cil 'cargo install --path ./' abbr -a cia 'cargo install-update -a' abbr -a ca 'cargo add'
I maybe steal your rust aliases What is bacon by the way?
Bacon is just compiler output but it “stays open” in your terminal and refreshes after you save your file; It is nice if you use something a bit minimal like vim without language server but you don’t want to compile manually every time.