The Awesome .bashrc File


Frequently accessed directories

Command Shortcuts

alert alias for long running commands
  • usage: sleep 5; alert

Compatible with commands from other OS

If we have scripts that were originated written for MacOS, now we want to run it in another Linux System: for example, Debian. Some commands like “pbcopy and pbpaste” are only available in Mac. We can change the code to detect which command it should use like below:

Or we can just define alias in .bashrc:

Command Options

Better Bash History

SSH Hosts

.bashrc vs .bash_profile

  • .bash_profile: runs when user logins in the shell
  • .bashrc: runs every time when user opens a new terminal
  • Mac OS X’s Terminal runs a login shell by default for each new terminal window

Organize .basrch

  • Put .bashrc (and other dotfiles) under version control.
  • Make .bashrc a symlink to a place which we keep under version control
split .bashrc
  • make a ~/profile.d directory, and source it in .bashrc:
  • example: bash_aliases.sh

Labels

adsense (5) Algorithm (69) Algorithm Series (35) Android (7) ANT (6) bat (8) Big Data (7) Blogger (14) Bugs (6) Cache (5) Chrome (19) Code Example (29) Code Quality (7) Coding Skills (5) Database (7) Debug (16) Design (5) Dev Tips (63) Eclipse (32) Git (5) Google (33) Guava (7) How to (9) Http Client (8) IDE (7) Interview (88) J2EE (13) J2SE (49) Java (186) JavaScript (27) JSON (7) Learning code (9) Lesson Learned (6) Linux (26) Lucene-Solr (112) Mac (10) Maven (8) Network (9) Nutch2 (18) Performance (9) PowerShell (11) Problem Solving (11) Programmer Skills (6) regex (5) Scala (6) Security (9) Soft Skills (38) Spring (22) System Design (11) Testing (7) Text Mining (14) Tips (17) Tools (24) Troubleshooting (29) UIMA (9) Web Development (19) Windows (21) xml (5)