From: Frank Brehm Date: Thu, 25 Feb 2016 17:44:31 +0000 (+0100) Subject: Adding basic/files/fbrehm.sh X-Git-Url: https://git.uhu-banane.org/?a=commitdiff_plain;h=9b904e9e15a336bf0de20a39c16295b23ff74e56;p=salt%2Fstates.git Adding basic/files/fbrehm.sh --- diff --git a/basic/files/fbrehm.sh b/basic/files/fbrehm.sh new file mode 100644 index 0000000..e37a241 --- /dev/null +++ b/basic/files/fbrehm.sh @@ -0,0 +1,150 @@ +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +# Check for bash +[ -z "$BASH_VERSION" ] && return + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=10000 +HISTFILESIZE=10000 +HISTTIMEFORMAT='%Y-%m-%d %H:%M:%S ' +HISTCONTROL=ignoredups:ignorespace +# append to the history file, don't overwrite it +shopt -s histappend + +# coloring grep: +export GREP_OPTIONS='--color=auto' +export GREP_COLOR='1;32' +# hold these special chars when piping to less +export LESS="--RAW-CONTROL-CHARS" + +# 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 /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 + +# set a fancy prompt (non-color, overwrite the one in /etc/profile) +PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' + +# 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 + if type -t __git_ps1 >/dev/null ; then + if [ "$UID" = 0 ]; then + PS1='$? ${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[01;30m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(__git_ps1)\[\033[01;34m\] \$ \[\033[00m\]' + else + PS1='$? ${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[01;31m\]$(__git_ps1)\[\033[01;34m\] > \[\033[00m\]' + fi + else + if [ "$UID" = 0 ]; then + PS1='$? ${debian_chroot:+($debian_chroot)}\[\033[01;31m\]\u@\h\[\033[01;30m\]:\[\033[01;34m\]\w \$ \[\033[00m\]' + else + PS1='$? ${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w > \[\033[00m\]' + fi + fi +else + PS1='$? ${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi + +# 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 + +# Save each command to the history file as it's executed. #517342 +# This does mean sessions get interleaved when reading later on, but this +# way the history is always up to date. History is not synced across live +# sessions though; that is what `history -n` does. +# Disabled by default due to concerns related to system recovery when $HOME +# is under duress, or lives somewhere flaky (like NFS). Constantly syncing +# the history will halt the shell prompt until it's finished. +PROMPT_COMMAND='history -a' + +# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default. +# If this is an xterm set the title to user@host:dir +case "$TERM" in + xterm*|rxvt*) + PROMPT_COMMAND='history -a; echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"' + ;; + *) + ;; +esac + +alias ..='cd ..' +alias ...='cd ../..' +alias cd..='cd ..' +alias cd...='cd ../..' +alias l='ls -l' +alias la='ls -la' +alias ll='ls -lA' +alias md='mkdir -p' +if type -t whoami >/dev/null; then + alias pl="ps -fu $(whoami)" +fi +alias rd='rmdir' + +if [ "$(type -t colordiff)" = "file" ] ; then + alias diff="$(type -p colordiff)" +fi + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable bash completion in interactive shells +if ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi + +# if the command-not-found package is installed, use it +if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then + function command_not_found_handle { + # check because c-n-f could've been removed in the meantime + if [ -x /usr/lib/command-not-found ]; then + /usr/bin/python /usr/lib/command-not-found -- "$1" + return $? + elif [ -x /usr/share/command-not-found/command-not-found ]; then + /usr/bin/python /usr/share/command-not-found/command-not-found -- "$1" + return $? + else + printf "%s: command not found\n" "$1" >&2 + return 127 + fi + } +fi + +unset color_prompt force_color_prompt + +# vim: ts=4 expandtab