## Cd stuff ```bash alias cd..='cd ..' alias cd...='cd ../..' alias cd....='cd ../../..' alias cd..3='cd ../../..' alias cd..4='cd ../../../..' alias cd..5='cd ../../../../..' alias ..='cd ..' alias ...='cd ../..' alias ..3='cd ../../..' alias ..4='cd ../../../..' alias ..5='cd ../../../../..' alias ls..='ls ..' up() { local I="$1"; ((I=I)); while ((I>0)); do cd ..; ((I--)); done; } # go up n directories ppd() { pwd | pc; } # pc = copy to clipboard pcwd() { pwd | pc ; } cdpp() { a="$(pp)"; [ -d "$a" ] && cd "$a"; } # for organising stuff into date-named folders today() { date +"%Y_%m_%d" ; } mkt() { mkdir -p "${1}_$(today)" ; } cdt() { cd "${1}_$(today)" ; } ``` ## My prompt ```bash color_prompt=yes if [ "$color_prompt" = yes ]; then BASE_PS1='\n\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\n\[\033[01;34m\]\W\[\033[00m\] \$ ' else BASE_PS1='\u@\h:\w\$ ' fi PS1="${BASE_PS1}" set_term_title_prompt() { PS1="\[\033];\h:\w\007\]""$BASE_PS1" } unset_term_title_prompt() { PS1="$BASE_PS1" } set_term_title_prompt ``` ## History stuff ```bash histv() { shopt -s histverify; } nohistv() { shopt -u histverify; } histv h() { if [ $# = 0 ]; then history; else history | grep "$@"; fi; } ```