Files
TerminalPolyjuice/bash/aliases/common_alias.sh
2026-04-03 16:15:31 +08:00

59 lines
1.4 KiB
Bash

#!/usr/bin/env bash
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'
alias .....='cd ../../../..'
alias ......='cd ../../../../..'
alias -- -='cd -'
alias ls='ls --color=auto'
alias l='ls -lFh'
alias la='ls -lAFh'
alias lr='ls -tRFh'
alias lt='ls -ltFh'
alias ll='ls -l'
alias ldot='ls -ld .*'
alias lss='ls -1FSsh'
alias lS='lss'
alias lart='ls -1Fcart'
alias lrt='ls -1Fcrt'
alias lsr='ls -lARFh'
alias lsn='ls -1'
alias grep='grep --color'
alias sgrep='grep -R -n -H -C 5 --exclude-dir={.git,.svn,CVS}'
alias t='tail -f'
alias weather='curl wttr.in'
alias moon='curl wttr.in/Moon'
alias quote='curl -s https://api.quotable.io/random | jq -r .content'
alias joke='curl -s -H "Accept: application/json" https://icanhazdadjoke.com/ | jq -r .joke'
alias dadjoke='curl -s -H "Accept: application/json" https://icanhazdadjoke.com/ | jq -r .joke'
alias dud='du -d 1 -h'
alias ff='find . -type f -name'
alias h='history'
alias hgrep='history | grep'
alias help='man'
alias p='ps -f'
alias sortnr='sort -n -r'
alias unexport='unset'
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
# Interactive directory picker from nushell cdi behavior.
cdi() {
if ! command -v fzf >/dev/null 2>&1; then
echo "fzf is not installed."
return 1
fi
local selected_dir
selected_dir="$(find . -type d 2>/dev/null | sed 's#^\./##' | fzf)"
[[ -n "$selected_dir" ]] && cd "$selected_dir"
}