# --------------------------------------------------------------------------- # # Description: This file holds all my BASH configurations and aliases # # Sections: # 1. Environment Configuration # 2. Make Terminal Better (remapping defaults and adding functionality) # 3. File and Folder Management # 4. Searching # 5. Process Management # 6. Networking # 7. System Operations & Information # 8. Web Development # 9. Reminders & Notes # # --------------------------------------------------------------------------- # ------------------------------- # 1. ENVIRONMENT CONFIGURATION # ------------------------------- # Change Prompt # ------------------------------------------------------------ export PS1="________________________________________________________________________________\n| \w @ \h (\u) \n| => " export PS2="| => " # Set Paths # ------------------------------------------------------------ export PATH="$PATH:/usr/local/bin/" export PATH="/usr/local/git/bin:/sw/bin/:/usr/local/bin:/usr/local/:/usr/local/sbin:/usr/local/mysql/bin:$PATH" # Set Default Editor (change 'Nano' to the editor of your choice) # ------------------------------------------------------------ export EDITOR=/usr/bin/nano # Set default blocksize for ls, df, du # from this: http://hints.macworld.com/comment.php?mode=view&cid=24491 # ------------------------------------------------------------ export BLOCKSIZE=1k # Add color to terminal # (this is all commented out as I use Mac Terminal Profiles) # from http://osxdaily.com/2012/02/21/add-color-to-the-terminal-in-mac-os-x/ # ------------------------------------------------------------ # export CLICOLOR=1 # export LSCOLORS=ExFxBxDxCxegedabagacad # ----------------------------- # 2. MAKE TERMINAL BETTER # ----------------------------- alias cp='cp -iv' # Preferred 'cp' implementation alias mv='mv -iv' # Preferred 'mv' implementation alias mkdir='mkdir -pv' # Preferred 'mkdir' implementation alias ll='ls -FGlAhp' # Preferred 'ls' implementation alias less='less -FSRXc' # Preferred 'less' implementation cd() { builtin cd "$@"; ll; } # Always list directory contents upon 'cd' alias cd..='cd ../' # Go back 1 directory level (for fast typers) alias ..='cd ../' # Go back 1 directory level alias ...='cd ../../' # Go back 2 directory levels alias .3='cd ../../../' # Go back 3 directory levels alias .4='cd ../../../../' # Go back 4 directory levels alias .5='cd ../../../../../' # Go back 5 directory levels alias .6='cd ../../../../../../' # Go back 6 directory levels alias edit='subl' # edit: Opens any file in sublime editor alias f='open -a Finder ./' # f: Opens current directory in MacOS Finder alias ~="cd ~" # ~: Go Home alias c='clear' # c: Clear terminal display alias which='type -all' # which: Find executables alias path='echo -e ${PATH//:/\\n}' # path: Echo all executable Paths alias show_options='shopt' # Show_options: display bash options settings alias fix_stty='stty sane' # fix_stty: Restore terminal settings when screwed up alias cic='set completion-ignore-case On' # cic: Make tab-completion case-insensitive mcd () { mkdir -p "$1" && cd "$1"; } # mcd: Makes new Dir and jumps inside trash () { command mv "$@" ~/.Trash ; } # trash: Moves a file to the MacOS trash ql () { qlmanage -p "$*" >& /dev/null; } # ql: Opens any file in MacOS Quicklook Preview alias DT='tee ~/Desktop/terminalOut.txt' # DT: Pipe content to file on MacOS Desktop # lr: Full Recursive Directory Listing # ------------------------------------------ alias lr='ls -R | grep ":$" | sed -e '\''s/:$//'\'' -e '\''s/[^-][^\/]*\//--/g'\'' -e '\''s/^/ /'\'' -e '\''s/-/|/'\'' | less' # mans: Search manpage given in agument '1' for term given in argument '2' (case insensitive) # displays paginated result with colored search terms and two lines surrounding each hit. Example: mans mplayer codec # -------------------------------------------------------------------- mans () { man $1 | grep -iC2 --color=always $2 | less } # showa: to remind yourself of an alias (given some part of it) # ------------------------------------------------------------ showa () { /usr/bin/grep --color=always -i -a1 $@ ~/Library/init/bash/aliases.bash | grep -v '^\s*$' | less -FSRXc ; } # ------------------------------- # 3. FILE AND FOLDER MANAGEMENT # ------------------------------- zipf () { zip -r "$1".zip "$1" ; } # zipf: To create a ZIP archive of a folder alias numFiles='echo $(ls -1 | wc -l)' # numFiles: Count of non-hidden files in current dir alias make1mb='mkfile 1m ./1MB.dat' # make1mb: Creates a file of 1mb size (all zeros) alias make5mb='mkfile 5m ./5MB.dat' # make5mb: Creates a file of 5mb size (all zeros) alias make10mb='mkfile 10m ./10MB.dat' # make10mb: Creates a file of 10mb size (all zeros) # cdf: 'Cd's to frontmost window of MacOS Finder # ------------------------------------------------------ cdf () { currFolderPath=$( /usr/bin/osascript <