# ~/.bashrc: executed by bash(1) for non-login shells. # see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) # for examples # If not running interactively, don't do anything [ -z "$PS1" ] && return # don't put duplicate lines in the history. See bash(1) for more options # ... or force ignoredups and ignorespace HISTCONTROL=ignoredups:ignorespace # append to the history file, don't overwrite it shopt -s histappend # Whenever displaying the prompt, write the previous line to disk PROMPT_COMMAND="history -a" # for setting history length see HISTSIZE and HISTFILESIZE in bash(1) HISTSIZE=65536 HISTFILESIZE=131072 HISTFILE=$HOME/.bash.history # check the window size after each command and, if necessary, # update the values of LINES and COLUMNS. shopt -s checkwinsize # make less more friendly for non-text input files, see lesspipe(1) [ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" # set variable identifying the chroot you work in (used in the prompt below) if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then debian_chroot=$(cat /etc/debian_chroot) fi #------------------------------------------------------------- # greetinz0rs, motdz0rs etcz0rs... #------------------------------------------------------------- # define some colors first: red='\e[0;31m' RED='\e[1;31m' yellow='\e[0;33m' YELLOW='\e[1;33m' blue='\e[0;34m' BLUE='\e[1;34m' cyan='\e[0;36m' CYAN='\e[1;36m' NC='\e[0m' # no color (records). *eg*. # --> niiice... has the same effect as usin `ansi.sys' in dos. # looks best on a terminal with pitchedblack background... echo -e "${YELLOW}this is bash ${RED}${BASH_VERSION%.*}\ ${YELLOW} - display on ${RED}$DISPLAY${YELLOW}.\033[1;32m" echo -e `date | tr A-Z a-z`. if [ -x /usr/games/fortune ]; then /usr/games/fortune -s # makes our day a bit more fun... :-) fi function _exit() # function to run upon exit of shell. { echo -e "${RED}hasta la vista, punk.${NC}" } trap _exit EXIT # var needed for tty / pst printin. if [ `tty | grep tty` ]; then ADA="tty`tty | grep -o "[0-9]\|[0-9][0-9]\|[0-9][0-9][0-9]" | sed 's/\ //'`" && export ADA else ADA="pts/`tty | grep -o "[0-9]\|[0-9][0-9]\|[0-9][0-9][0-9]" | sed 's/\ //'`" && export ADA fi # set a fancy prompt (non-color, unless we know we "want" color) case "$TERM" in xterm-color) color_prompt=yes;; esac # uncomment for a colored prompt, if the terminal has the capability; turned # off by default to not distract the user: the focus in a terminal window # should be on the output of commands, not on the prompt force_color_prompt=yes if [ -n "$force_color_prompt" ]; then if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then # We have color support; assume it's compliant with Ecma-48 # (ISO/IEC-6429). (Lack of such support is extremely rare, and such # a case would tend to support setf rather than setaf.) color_prompt=yes else color_prompt= fi fi if [ "$color_prompt" = yes ]; then #PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' #PS1='\[\033[01;32m\]$(date +%I:%M:%S%P%a-%b%d.%Y)\[\033[01;33m\]+\[\033[01;33m~\]\[\033[01;36m\]\j.\n\[\033[01;36m\][\[\033[01;32m\]\u\[\033[1;33m\]@\[\033[01;32m\]\h\[\033[01;31m\]:\[\033[01;32m\]\!\[\033[01;31m\]:\[\033[01;32m\]\#\[\033[01;31m\]:\[\033[01;34m\]\w\[\033[01;32m\]\[\033[01;36m\]]\[\033[01;32m\]\n% ' PS1='\[\033[01;32m\]$ADA\[\033[01;34m\]^\[\033[01;32m\]$(date +%I)\[\033[01;32m\]$(date +%M)\[\033[31m\]$(date +%S)\[\033[01;32m\]$(date +%P | sed 's/m//')\[\033[01;33m\].\[\033[01;32m\]$(date +%a | tr "[:upper:]" "[:lower:]" | egrep -o [a-z]{3})\[\033[01;33m\].\[\033[01;32m\]$(date +%b | tr "[:upper:]" "[:lower:]")\[\033[01;33m\]\[\033[01;32m\]$(date +%d)\[\033[01;33m\]+$(cat /proc/loadavg | egrep -o [0-9]*.[0-9]{2} | grep ^ -m1)\[\033[01;33m~\]\[\033[01;36m\]$(jobs | grep \[[0-9].\] -o | egrep [0-9]\|[0-9]{2} -o | grep -v ^0;)\j.\n\[\033[01;36m\][${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u\[\033[1;33m\]@\[\033[01;32m\]\h\[\033[01;31m\]\[\033[01;31m\]:\[\033[01;32m\]\!\[\033[01;31m\]:\[\033[01;32m\]\#\[\033[01;31m\]:\[\033[01;34m\]\w\[\033[01;32m\]\[\033[01;36m\]]\[\033[01;32m\]\n% ' else PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' fi unset color_prompt force_color_prompt # If this is an xterm set the title to user@host:dir case "$TERM" in xterm*|rxvt*) PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" ;; *) ;; esac PS2='\w % ' # enable color support of ls and also add handy aliases if [ -x /usr/bin/dircolors ]; then test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" alias ls='ls --color=auto' #alias dir='dir --color=auto' #alias vdir='vdir --color=auto' alias grep='grep --color=auto' alias fgrep='fgrep --color=auto' alias egrep='egrep --color=auto' fi # some more ls aliases alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' # Alias definitions. # You may want to put all your additions into a separate file like # ~/.bash_aliases, instead of adding them here directly. # See /usr/share/doc/bash-doc/examples in the bash-doc package. if [ -f ~/.bash_aliases ]; then . ~/.bash_aliases fi alias fortune='fortune art bofh-excuses computers disclaimer definitions debian drugs goedel linux magic love news science zippy' alias igal='igal -r -w 4' # -r = omit the film reel effect altogether. # -w = thumbnail rows in the main index file. default is 5. # enable programmable completion features (you don't need to enable # this, if it's already enabled in /etc/bash.bashrc and /etc/profile # sources /etc/bash.bashrc). #if [ -f /etc/bash_completion ] && ! shopt -oq posix; then # . /etc/bash_completion #fi # mount aligned, headed and cleaned. nicemount() { (echo "DEVICE PATH TYPE FLAGS" && mount | awk '$2=$4="";1') | column -t; } # wikipedia via txt dns record. whoa. wiki() { dig +short txt $1.wp.dg.cx; } #alias wiki='dig +short txt $1.wp.dg.cx' # bc(1) env args. export BC_ENV_ARGS=~/.bc # golang. # it seems that the go binaries don't care much for posix file paths. # therefore, we must specify the GOROOT in win path format. #export GOROOT='C:\go\' #export GOPATH=~/go #export PATH=$PATH:$GOROOT/bin #export PATH=$PATH:$GOPATH/bin export PATH=$PATH:/root/bin/ export PATH=$PATH:~/bin/ # ## plan9 from user space. # PLAN9=/usr/local/plan9 && export PLAN9 PATH=$PATH:$PLAN9/bin && export PATH ### ## # eof. # ## ###.