SHOW:
|
|
- or go back to the newest paste.
| 1 | # PS1 Prompt | |
| 2 | - | tty -s && export PS1="\[\033[38;5;35m\]\t [\[\033[38;5;33m\]\j\[\033[38;5;35m\]] [\h:\[$(tput sgr0)\]\[\033[38;5;33m\]\w\[$(tput setaf 3)\]]\n\\[\033[38;5;35m\]🦄 \[$(tput sgr0)\]" |
| 2 | + | tty -s && export PS1="\[\033[38;5;35m\]\t [\[\033[38;5;33m\]\j\[\033[38;5;35m\]] [\h:\[$(tput sgr0)\]\[\033[38;5;33m\]\w\[$(tput setaf 3)\]]\n\\[\033[38;5;35m\]🐦 \[$(tput sgr0)\]" |
| 3 | ||
| 4 | # Env | |
| 5 | export TERM=xterm-256color | |
| 6 | export EDITOR=vim | |
| 7 | ||
| 8 | # Don't add duplicate lines or lines beginning with a space to the history | |
| 9 | HISTCONTROL=ignoreboth | |
| 10 | ||
| 11 | # Set history format to include timestamps | |
| 12 | HISTTIMEFORMAT="%Y-%m-%d %T " | |
| 13 | ||
| 14 | # Correct simple errors while using cd | |
| 15 | shopt -s cdspell | |
| 16 | ||
| 17 | # Add /home/$USER/bin to $PATH | |
| 18 | case :$PATH: in | |
| 19 | *:/home/$USER/bin:*) ;; | |
| 20 | *) PATH=/home/$USER/bin:$PATH ;; | |
| 21 | esac | |
| 22 | ||
| 23 | # Enable tab completion for tmux | |
| 24 | source /home/jay/.tmux/plugins/completion/tmux | |
| 25 | ||
| 26 | # Add /home/$USER/.tmux/tmuxifier to $PATH | |
| 27 | case :$PATH: in | |
| 28 | *:/home/$USER/.tmux/tmuxifier/bin:*) ;; | |
| 29 | *) PATH=/home/$USER/.tmux/tmuxifier/bin:$PATH ;; | |
| 30 | esac | |
| 31 | ||
| 32 | # Make sure always using tmux | |
| 33 | #if command -v tmux>/dev/null; then | |
| 34 | # if [ ! -z "$PS1" ]; then # unless shell not loaded interactively, run tmux | |
| 35 | # [[ ! $TERM =~ screen ]] && [ -z $TMUX ] && tmux | |
| 36 | # fi | |
| 37 | #fi | |
| 38 | ||
| 39 | # Command aliases | |
| 40 | alias ..='cd ..' | |
| 41 | alias ...='cd ../../../' | |
| 42 | alias ....='cd ../../../../' | |
| 43 | alias back='cd $OLDPWD' | |
| 44 | alias c='clear' | |
| 45 | alias cd..='cd ..' | |
| 46 | alias cp='cp -iv' | |
| 47 | alias chmod="chmod -c" | |
| 48 | alias chmod="chmod -c" | |
| 49 | alias df="df -h --exclude=squashfs" | |
| 50 | alias diff='colordiff' | |
| 51 | alias egrep='egrep --colour=auto' | |
| 52 | alias e="vim -O " | |
| 53 | alias E="vim -o " | |
| 54 | alias extip='curl icanhazip.com' | |
| 55 | alias grep='grep --color=auto' | |
| 56 | alias l.=' ls -lhFa --time-style=long-iso --color=auto' | |
| 57 | alias ll=' ls' | |
| 58 | alias ls=' ls -lhF --time-style=long-iso --color=auto' | |
| 59 | alias lsmount='mount |column -t' | |
| 60 | alias mkdir='mkdir -pv' | |
| 61 | alias ports='netstat -tulanp' | |
| 62 | alias h='history' | |
| 63 | alias j='jobs -l' | |
| 64 | alias mv='mv -iv' | |
| 65 | alias speedtest='curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python -' | |
| 66 | alias ssha='eval $(ssh-agent) && ssh-add' | |
| 67 | alias svim='sudo vim' | |
| 68 | alias tn=' tmux new -s' | |
| 69 | alias vdestroy='vagrant destroy' | |
| 70 | alias vssh='vagrant ssh' | |
| 71 | alias vup='vagrant up' | |
| 72 | alias watch='watch -d' | |
| 73 | alias weather='curl wttr.in' | |
| 74 | alias wget='wget -c' | |
| 75 | ||
| 76 | ## get top process eating memory | |
| 77 | alias mem5='ps auxf | sort -nr -k 4 | head -5' | |
| 78 | alias mem10='ps auxf | sort -nr -k 4 | head -10' | |
| 79 | ||
| 80 | ## get top process eating cpu ## | |
| 81 | alias cpu5='ps auxf | sort -nr -k 3 | head -5' | |
| 82 | alias cpu10='ps auxf | sort -nr -k 3 | head -10' | |
| 83 | ||
| 84 | ## List largest directories (aka "ducks") | |
| 85 | alias dir5='du -cksh * | sort -hr | head -n 5' | |
| 86 | alias dir10='du -cksh * | sort -hr | head -n 10' | |
| 87 | ||
| 88 | # Safetynets | |
| 89 | # do not delete / or prompt if deleting more than 3 files at a time # | |
| 90 | alias rm='rm -I --preserve-root' | |
| 91 | ||
| 92 | # confirmation # | |
| 93 | alias mv='mv -i' | |
| 94 | alias cp='cp -i' | |
| 95 | alias ln='ln -i' | |
| 96 | ||
| 97 | # Parenting changing perms on / # | |
| 98 | alias chown='chown --preserve-root' | |
| 99 | alias chmod='chmod --preserve-root' | |
| 100 | alias chgrp='chgrp --preserve-root' | |
| 101 | ||
| 102 | # reload bash config | |
| 103 | alias reload="source ~/.bashrc" | |
| 104 | ||
| 105 | # Manage packages easier | |
| 106 | if [ -f /usr/bin/apt ]; then | |
| 107 | alias update='sudo apt update' | |
| 108 | alias upgrade='sudo apt update && sudo apt dist-upgrade' | |
| 109 | alias install='sudo apt install' | |
| 110 | fi | |
| 111 | ||
| 112 | if [ -f /usr/bin/pacman ]; then | |
| 113 | alias update='sudo pacman -Syyy' | |
| 114 | alias upgrade='sudo pacman -Syu' | |
| 115 | alias install='sudo pacman -S' | |
| 116 | fi | |
| 117 | ||
| 118 | ## Functions | |
| 119 | # Make a directory, then go there | |
| 120 | md() {
| |
| 121 | test -n "$1" || return | |
| 122 | mkdir -p "$1" && cd "$1" | |
| 123 | } | |
| 124 | ||
| 125 | # "path" shows current path, one element per line. | |
| 126 | # If an argument is supplied, grep for it. | |
| 127 | path() {
| |
| 128 | test -n "$1" && {
| |
| 129 | echo $PATH | perl -p -e "s/:/\n/g;" | grep -i "$1" | |
| 130 | } || {
| |
| 131 | echo $PATH | perl -p -e "s/:/\n/g;" | |
| 132 | } | |
| 133 | } | |
| 134 | ||
| 135 | extract () {
| |
| 136 | if [ -f $1 ] ; then | |
| 137 | case $1 in | |
| 138 | *.tar.bz2) tar xjvf $1 ;; | |
| 139 | *.tar.gz) tar xzvf $1 ;; | |
| 140 | *.tar.xz) tar xvf $1 ;; | |
| 141 | *.bz2) bzip2 -d $1 ;; | |
| 142 | *.rar) unrar2dir $1 ;; | |
| 143 | *.gz) gunzip $1 ;; | |
| 144 | *.tar) tar xf $1 ;; | |
| 145 | *.tbz2) tar xjf $1 ;; | |
| 146 | *.tgz) tar xzf $1 ;; | |
| 147 | *.zip) unzip2dir $1 ;; | |
| 148 | *.Z) uncompress $1 ;; | |
| 149 | *.7z) 7z x $1 ;; | |
| 150 | *.ace) unace x $1 ;; | |
| 151 | *) echo "'$1' cannot be extracted via extract()" ;; | |
| 152 | esac | |
| 153 | else | |
| 154 | echo "'$1' is not a valid file" | |
| 155 | fi | |
| 156 | } |