.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