Shell Configs

From Leo's Notes
Revision as of 00:01, 28 April 2013 by Leo (talk | contribs) (Created page with "Below is my current bash profile (.bashrc). == Leo's .bashrc == # .bashrc # # Solaris? Bail out using /bin/sh and skip all the # bash fancinesses which applies mostly to l...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
This page was last edited on 28 April 2013, at 00:01.

Below is my current bash profile (.bashrc).

Leo's .bashrc

  1. .bashrc
  1. Solaris? Bail out using /bin/sh and skip all the
  2. bash fancinesses which applies mostly to linux.

if [ "`uname`" = "SunOS" ] ; then

   exec sh

fi

  1. The 'free' command doesn't exist in FreeBSD. Will
  2. run sysctl and show memory information instead.

if [ "`uname`" = "FreeBSD" ] ; then

   alias free="sysctl hw.physmem"

fi

  1. Alias vi to vim only if vim exists

command -v vim >/dev/null 2>&1 if [ $? -eq 0 ] ; then

   alias vi=vim

fi

  1. Aliases to ls and grep with nice options as default

alias ls="ls --color -F -h" alias grep="grep --color=always --line-buffered"


Details

ls

The command:

ls --color=always -F -h

Flags:

--color[=auto]

Ensures that the output is colorized only to stdout. We do not want colors to go through pipes. The 'auto' value is implied as it is the default option.

-F

Prints a forward slash on directories.

-h

Prints sizes in human readable form

grep

The command:

grep --color=always --line-buffered

Flags:

--color=always

Ensures output is colored even if not going to stdout. Makes it nice when piping to more or less.

--line-buffered

As I usually deal with lines of texts, this makes piping multiple greps together work properly.