############### ### Aliases ### ############### # cd up multiple directories at a time alias ..='cd ..' alias ...='cd ../../' alias ....='cd ../../../' alias .....='cd ../../../../' alias ......='cd ../../../../../' # some more ls aliases alias ll='ls -hAtFl' alias la='ls -hA' alias l='ls -htFl' # make cp and mv prompt before overwriting alias cp='cp -i' alias mv='mv -i' # Make everything tell us what they're doing alias mkdir='mkdir -pv' alias rm='rm -v' alias rmdir='rmdir -v' # Make the permissions tweaking commands give us more information about what they are doing alias chmod='chmod -c' alias chown='chown -c' alias chgrp='chgrp -c' # Make time work properly alias time=/usr/bin/time # dfh: Show disk usage in a form we can actually understand alias dfh='df -h' # catz: gunzip & display commpressed gz files. alias catz='gunzip -c' # show colours in less alias less='less -R' # Alias to clear the screen for real alias cls='printf "\033c"' # mkfifo -> mkpipe alias mkpipe='mkfifo' # allow us to create a directory and immediately move into it function mcd { mkdir -pv "$1" && cd "$1";} # hr alias hrh='hr - - = - -' # termbins alias sbrlbin='netcat starbeamrainbowlabs.com 9999' alias termbin='netcat termbin.com 9999' # termbin for any kind of file transfer() { if [ $# -eq 0 ]; then echo "No arguments specified. Usage:\necho transfer /tmp/test.md\ncat /tmp/test.md | transfer test.md"; return 1; fi tmpfile=$( mktemp -t transferXXX ); if tty -s; then basefile=$(basename "$1" | sed -e 's/[^a-zA-Z0-9._-]/-/g'); curl --progress-bar --upload-file "$1" "https://transfer.sh/$basefile" >> $tmpfile; else curl --progress-bar --upload-file "-" "https://transfer.sh/$1" >> $tmpfile ; fi; cat $tmpfile; rm -f $tmpfile; } # gitignore.io interface function gitignore() { curl -L -s https://www.gitignore.io/api/$@; } # Get / Set clipboard contents alias setclip='xclip -selection c' alias getclip='xclip -selection clipboard -o' # Ubuntu's inbuilt image previewer. I'll never be able to remember eog... alias image-preview=eog # colourise man function _colorman() { env \ LESS_TERMCAP_mb=$(printf "\e[1;35m") \ LESS_TERMCAP_md=$(printf "\e[1;34m") \ LESS_TERMCAP_me=$(printf "\e[0m") \ LESS_TERMCAP_se=$(printf "\e[0m") \ LESS_TERMCAP_so=$(printf "\e[7;40m") \ LESS_TERMCAP_ue=$(printf "\e[0m") \ LESS_TERMCAP_us=$(printf "\e[1;33m") \ "$@" } function man() { _colorman man "$@"; } # Quickly jump around places function telepeek() { find . -type d 2>/dev/null | grep -iP "$1" | cat -n | sed 's/^[ 0-9]*[0-9]/\o033[34m&\o033[0m/' | less -R } function teleport() { cd $(find . -type d 2>/dev/null | grep -m1 -iP "$1"); } function telepick() { telepeek $1; read -p "jump to index: " line_number; cd $(find . -type d 2>/dev/null | grep -iP "$1" | sed "${line_number}q;d"); }