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 }
alias ..='cd ..'
My variant (u mean “up” in my head)
alias u ='cd ..' alias uu ='cd ../..' alias uuu='cd ../../..'
AmigaOS style!
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 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.
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 clearswap='sudo swapoff -a && sudo swapon -a' alias grep='grep --color=auto' alias ls='ls --color=auto --group-directories-first' alias la='ls -lAh --color=auto --group-directories-first' alias timestamp='date +%Y-%m-%dT%H-%M-%S'
alias ta="tmux attach -t"
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 :)
alias clearswap='sudo swapoff -a && sudo swapon -a
alias reload=‘source ~/.bashrc’
scan_local() {
local_ip=$(ip addr show wlan0 | grep "inet " | awk '{print $2}' | awk -F '/' '{print $1}') sudo nmap -sn "$local_ip/24"
}
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 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”
I made a cool exercise some time ago: checking my top 10 used commands, to see how I can “optimize” them, and maybe create a few aliases to save a few keystrokes. Turns out I don’t need that much aliases in the end:
alias v='vis' # my text editor alias sv='doas vis' alias ll='ls -l'
And that’s pretty much it ^^ I do have a lot of scripts though, some of them being one-liners, but it makes them shell independent, which I like :)
For reference, here is my analysis of my top 10 most used commands.
edit: I do have a bunch of git aliases though for common subcommands I use. I prefer using them as
git <alias>
over using she’ll specific aliases so I can always type “git
” and not mentally think wether I need a git command or a shell alias.Vis nether heard of this editor
Then you should definitely check it out: vis.
Its original goal was to be a vim clone with 90% of the features in 10% of the code. Then it grew into being the bastard son of Vim and Sam editors (plan9’s structural regex based editor).
The result is vis, an editor with vim like navigation and text manipulation mechanics, but with access to Sam’s powerful structural regex commands which works selection wise, rather than likewise like vim. Check this paper to learn about it: struct-regex.pdf.
I don’t use aliases. Since I use
fish
as a login shell, I use abbreviations. I have a lot of them configured. But I think my favorite one isyeet
which expands toparu -Rcns
.What a nice abbreviation of the conventional way of declaring the minimanalasation of a command. I need to check out fish but i don’t really know about it so much.