Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
My shell profile
Shell Ruby Perl
tree: 6bbf6ced3d

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
Darwin
Linux
SunOS
dotfiles
scripts
README.textile
autojump.conf
cdargs.conf
chef.conf
colors.conf
editors.conf
environment.conf
git.conf
hoopla.conf
init
java.conf
mvn.conf
profile.conf
rails.conf
ruby.conf
ssh.conf
svn.conf
utils.conf
web.conf

README.textile

My Bash Profile

This is the profile that I’m now using across a number of machines that I administer. Most of the tricks I use are fairly general and could be reused by anyone.

What’s it look like?

Feature Diagram

Usage

# Go home
cd ~

# Clone mine or your own fork
git clone git://github.com/matschaffer/profile.git .profile.d

# All *.conf files are loaded alphabetically, so this will retain your original settings
mv .profile .profile.d/z_myoldsettings.conf

# .profile.d/init kicks off the whole thing
ln -s .profile.d/init .profile

# Make sure you don't have any .bash_profile or .bashrc hanging out which might override .profile
# and reload your profile
source .profile

From here you can now put any .profile.d/*.conf file, or put it in a folder for your `uname` (Darwin, Linux, SunOS are already there). The load order is.

  1. .profile.d/init
  2. .profile.d/`uname`/init
  3. .profile.d/*.conf
  4. .profile.d/`uname`/*.conf

Features

  • Reactive prompt – includes date and exit code of last command and git branch.
  • Tab Completion for Git and Subversion
  • Tab completion for Rake, Maven 2 and Ant
  • Tab completion for ssh hosts on OS X.
  • Git aliases
  • ‘safeedit’ function that makes a timestamped backup copy of a file before editing
  • Basic java set up on solaris and Darwin
  • Maven memory settings
  • ‘profile_push’ function for pushing these files out to other servers
  • ‘link_dotfiles’ command that will create symlinks for all the files listed in the dotfiles directory
  • Auto setup of .foward file on Linux and Solaris
  • Integration with CDArgs

Planned features

  • Tab completion for ssh hosts in Solaris
  • Single-command for SSH key distribution and profile distribution
Something went wrong with that request. Please try again.