.bash_profile-Striptease

26.11.2008 – 1 Kommentar

Zusammenfassung

Da ich es selber recht nützlich finde, zu sehen, wie andere Benutzer ihr Terminal konfiguriert haben, poste ich heute einfach mal meine .bash_profile-Datei.

Ich habe die Datei noch ein wenig anonymisiert, und natürlich variieren die Dateien auch leicht zwischen meinem Arbeitsplatz und Zuhause, sind im Kern aber gleich.

source ~/.bashrc # Hier werden noch einige Farbkonfigurationen geladen

# Unix Aliase
alias ll="ls -lisa"
alias la="ls -la"
alias ls-l="ls -l"
alias cd..="cd .."
alias ..="cd .."
alias ...="cd ../.."
alias s1ssh="ssh user@server1"
alias s2ssh="ssh user@server2"
alias svnserver="svn://svnserver/online/websites/"

# Pfade
export kunden="/Users/user/Projekte/Kunden/"
export intern="/Users/user/Projekte/Intern/"
export privat="/Users/user/Projekte/Privat/"
export desktop="/Users/user/Desktop/"
export arbeit="/Users/user/Arbeit/"
export downloads="/Users/user/Downloads/"

# Git Aliase
alias gst='git status'
alias gl='git pull'
alias gp='git push'
alias gd='git diff | mate'
alias gc='git commit -v'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gsr='git svn rebase'
alias gsc='git svn dcommit'
alias gho='$(git remote -v | grep github | sed -e "s/.*git\:\/\/\([a-z]\.\)*/\1/" -e "s/\.git$//g" -e "s/.*@\(.*\)$/\1/g" | tr ":" "/" | tr -d "\011" | sed -e "s/^/open http:\/\//g")'

# Tree
alias tree="find . -print | sed -e 's;[^/]*/;|-- ;g;s;-- |;   |;g'"

# Memory
alias memcheck='ps -u $LOGNAME -o pid,rss,command'
alias memtotal='ps -u $LOGNAME h -o rss | (tr '\n' +; echo 0) | bc'

# PATH
export PATH="/Library/Frameworks/Python.framework/Versions/Current/bin:$PATH"
export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:/usr/local/postgresql-8.2.5/bin:$PATH" 
export PATH="/Users/user/bin:$PATH" # Eigene Scripte

# PYTHONPATH
# Verschiedene Python-Module, meist einzelne Dateien, die restlichen Module 
# sind mit PyLink symbolisch in `site-packages` verlinkt
export PYTHONPATH="/Users/user/Python/Module/misc:$PYTHONPATH"

# MANPATH
export MANPATH="/usr/local/man:$MANPATH"

# Editoren
# Auf dem Server benutze ich "vim"
export EDITOR="mate -w"
export CVSEDITOR="mate -w"
export SVN_EDITOR="mate -w"

# Proxy
# Ja, es nervt mich selber, dass ich mein Proxy-Passwort hier eintragen muss,
# aber sonst komme ich nicht durch die Mist-Firewall.
export http_proxy="http://user:pw@ip:port"
export https_proxy="http://user:pw@ip:port"
export ftp_proxy="http://user:pw@ip:port"
export HTTP_PROXY=$http_proxy
export HTTPS_PROXY=$https_proxy
export FTP_PROXY=$ftp_proxy
export proxy="ip:port"
export http_proxy_user="user"
export proxy_username="user"
export http_proxy_pass="pw"
export proxy_password="pw"
export GIT_CURL_VERBOSE="1"

# Unicode
export LC_CTYPE=de_DE.UTF-8

# Universaler Entpacker
extract () {
    if [ -f $1 ] ; then
        case $1 in
            *.tar.bz2)  tar xjf $1      ;;
            *.tar.gz)   tar xzf $1      ;;
            *.bz2)      bunzip2 $1      ;;
            *.rar)      rar x $1        ;;
            *.gz)       gunzip $1       ;;
            *.tar)      tar xf $1       ;;
            *.tbz2)     tar xjf $1      ;;
            *.tgz)      tar xzf $1      ;;
            *.zip)      unzip $1        ;;
            *.Z)        uncompress $1   ;;
            *)          echo "'$1' cannot be extracted via extract()" ;;
        esac
    else
        echo "'$1' is not a valid file"
    fi
}

# Farbiges Terminal
NORMAL='\[\033[00m\]'
BGREEN='\[\033[1;32m\]'
BBLUE='\[\033[1;34m\]'
GREEN='\[\033[0;32m\]'

# Diese Funktionen zeigen den aktuellen Git-Branch oder die SVN-Versionsnummer an (Dank an Justin Lilly)
parse_git_branch() {
    git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1 /';
}
parse_svn_rev() {
    svn info 2> /dev/null | grep "Revision" | sed 's/Revision: \(.*\)/r\1 /';
}

export PS1="${BGREEN}\u@\h ${GREEN}\$(parse_git_branch)\$(parse_svn_rev)${BBLUE}[${NORMAL}\w${BBLUE}]\n${BBLUE}$ ${NORMAL}"
export TERM="xterm-color"
export CLICOLOR="true"
export LSCOLORS="gxfxcxdxbxegedabagacad"

# Git-Completion-Datei
source ~/Archiv/Programmierung/Shell/bin/git-completion.bash

Wenn jemand einen tollen Tipp hat, Änderungs- oder Verbesserungsvorschläge hat, immer her damit!

Kommentare

1 Kommentar

  1. Jerry
    13.01.2011
    00:07 Uhr

    ... vielleicht noch "set -o vi", um die vim move-commands auch in der shell zu verwenden ...

Dieser Eintrag kann nicht mehr kommentiert werden.
Portaitfoto von Stefan Imhoff

Ich bin Stefan Imhoff, Designer und Webentwickler, Kampfkünstler und Hobby-Philosoph. 1999 habe ich das Ninjutsu-Magazin kogakure.de entwickelt, das schon bei PRO7 (Galileo), RTL2 (Welt der Wunder) und in der P.M. erwähnt wurde. Ich wohne in Hamburg und interessiere mich für Webstandards, Zugänglichkeit von Websites, Django, Bücher, Kinofilme, CG, Apple, Design und noch zwei, drei andere Dinge. Mehr Informationen »

Kogakure CreativeCommons ExpressionEngine Apple Webfaction

© 2006-2012, Stefan Imhoff. Die Inhalte sind unter einer CreativeCommons-Lizenz veröffentlicht.

Angetrieben mit ExpressionEngine 1.6.3 und gehostet von Webfaction. Impressum, Datenschutz