if [ -f $HOME/.profile ]; then source $HOME/.profile fi # # TODO: CISM Section # mySystem=$(uname -n) myFQDN="$(uname -n).$(dnsdomainname)" mySlesVersionId=$(grep PRETTY_NAME /etc/os-release) mySlesVersion=${mySlesVersionId#*=} mySlesVersion=${mySlesVersion//\"} # Debugging if [ "$myFQDN" == "BUI-NB1207-GP.bui.materna.com" ]; then log_info "env: $myFQDN ($myType) in $myEnv" myType=$myFQDN myEnv=STG myNum=0 else myType=$myFQDN myEnv=unknown myNum=0 fi function fadeIn() { START=$1 END=$2 for ((i=$START; i<=$END; i++)); do FADE="$FADE\[\e[48;5;${i}m\] " done FADE="$FADE \[\e[0m" } function fadeOut() { START=$1 END=$2 for ((i=$START; i<=$END; i--)); do FADE="$FADE\[\e[48;5;${i}m\] " echo -e "$FADE" done FADE="$FADE \[\e[0m" } # CPU function function getCPULoad { echo $(sar -u 1 1 | awk '/^Average:/{print 100-$8}') } # last exit code function lastExitCode { local exit="$?" local VERSION_ID=$(grep VERSION_ID /etc/os-release) local SLES_VERSION=${VERSION_ID#*=} local SLES_VERSION=${SLES_VERSION//\"} if [ $exit != 0 ];then # echo -e "${sol_red}!${bg_reset}" # printf '\[\033[32m\]0_0\[\033\0m\]' # printf '0_0 ✕' printf '\e[38;5;160m%-5s' "✕ ❗ ($exit)" else # echo "OK" # printf '^_^ ✔' printf '✔' fi # printf "  $SLES_VERSION" } # Solarized Theme source $HOME/.solarize_colors_base bg_system="\[\e[48;5;0m\]" bg_type="\[\e[48;5;254m\]" bg_reset="\[\e[49m\]" fg_sytem="\[\e[38;5;15m\]" fg_type="\[\e[1m\]" fg_reset="\[\e[39m\]" fg_arrow1="\[\e[38;5;18m\]" fg_arrow2="\[\e[38;5;254m\]" # Background by ENV dev="22" prod="52" sys="94" case $myEnv in DEV) SYSTEM="Development System" bg_system="${sol_bg_green}" fg_system="${sol_green}" fg_type="${sol_green}" ;; TST) SYSTEM="Test System" bg_system="${sol_bg_blue}" fg_system="${sol_blue}" fg_type="${sol_blue}" ;; PRD) SYSTEM="Production System" bg_system="${sol_bg_red}" fg_system="${sol_red}" fg_type="${sol_red}" ;; STG|ST2) SYSTEM="$myEnv" bg_system="${sol_bg_yellow}" fg_system="${sol_yellow}" fg_type="${sol_yellow}" ;; *) echo "myEnv: $myEnv" echo "myType: $myType" SYSTEM="System of a Down" bg_system="${sol_bg_magenta}" fg_system="${sol_magenta}" fg_type="${sol_magenta}" ;; esac bg_type="${sol_bg_base3}" fg_arrow1="${fg_type}" fg_arrow2="${sol_base3}" if [[ -z "${myType// }" ]]; then TYPE=$(uname -n) else TYPE=" $myType " fi if [ "$myNum" != "0" ]; then TYPE="$TYPE ($myNum)" fi echo "System Prompt: $SYSTEM_PROMPT" # SYSTEM_PROMPT="\n${bg_system}${fg_sytem}${SYSTEM} ${bg_type}${fg_arrow1}" #  " #                 SYSTEM_PROMPT="\n${fg_arrow1}░▒▓${bg_system} ${fg_sytem}${SYSTEM} ${bg_type}${fg_arrow1}▓▒░" # fadeIn 64 230 #echo -e "$FADE" # SYSTEM_PROMPT="\n${bg_system}${fg_sytem}${SYSTEM} $FADE" # TYPE_PROMPT="$TYPE  [CPU: \$(getCPULoad) %] ${bg_reset}${fg_arrow2}" # TYPE_PROMPT="$TYPE  [\$(if [ \$? = 0 ]; then echo ${sol_red}^_^; else echo 0_0; fi)] ${bg_reset}${fg_arrow2}▓▒░" # TYPE_PROMPT="$TYPE  \$(lastExitCode) ${bg_reset}${fg_arrow2}▓▒░" # TYPE_PROMPT="$TYPE  \$(lastExitCode) ${fg_arrow1}  $mySlesVersion ${sol_blue}\${STY#[0-9]*.} ${bg_reset}${fg_arrow2}▇▆▅▄▃▂▁" TYPE_PROMPT="$TYPE  \$(lastExitCode) ${fg_arrow1}  $mySlesVersion ${sol_blue}\${STY#[0-9]*.} ${bg_reset}${fg_arrow2}▓▒░" # With CPU Load # TYPE_PROMPT="$TYPE  [CPU: \$(getCPULoad) %] ${bg_reset}${fg_arrow2}▓▒░" # TYPE_PROMPT="\[\e[48;5;27;1;30m$TYPE ${bg_reset}\[\e[48;5;27m░▒▓" PROMPT="${SYSTEM_PROMPT} ${TYPE_PROMPT}" DATE="\[\e[0;32m\]\d \t" if [ "$(whoami)" = "root" ]; then DIR="\[\e[97;49m\]\[\e[0;91;107m\] \u@\h \[\e[97;49m\]\[\e[39;49m\] in \[\e[0;32m\]\w" # DIR="\[\e[97;49m\]▒\[\e[0;91;107m\] \u@\h \[\e[97;49m\]▒\[\e[39;49m\] in \[\e[0;32m\]\w" else DIR="\[\e[0;32m\]\u@\h \[\e[31m\]☆ \[\e[0;32m\]\w" fi # PROMPT_COMMAND=promptcmd PS1="${PROMPT}\[\e[0m\] \n${DIR}\n${DATE} → \[\e[0m\]" echo '┌─────────────────────────────┐' echo '│ Welcome to CISM │' echo '└─────────────────────────────┘' if [ $(whoami | grep root | wc -l) == 1 ]; then echo -e "\e[31;107m┌─────────────────────────────┐\e[0m" echo -e "\e[31;107m│ YOU ARE ROOT, BE CAREFUL! │\e[0m" echo -e "\e[31;107m└─────────────────────────────┘\e[0m" # Test mintty echo -ne '\e]11;44,10,10\a' else # echo -ne '\e]11;0,30,60\a' log_warn "TODO: background colors..." fi if [ $(hostname | grep solveig | wc -l) == 1 ]; then echo 'Welcome on solveig' export PS1="\n\d \t ☆ \e[1;31m\]\u@\h \[\e[39m\]in \[\e[0;32m\]\w\n\[\e[0;32m\]$(git branch) → \[\e[39m\]" elif [ $(hostname | grep openwrt | wc -l) == 1 ]; then PS1="\e[36m \t \e[31m- \e[32m\u@\h \e[0m in \w \n \e[0;32m \$ \e[39m" fi # taken from https://github.com/randomphrase/dotfiles/blob/master/sshrc # modified to use own "HOME" # Are we using a shared account? # if [[ -z "$ENVIRONMENT" ]]; then # Use my own shell history file # export HISTFILE=$HOME/.bash_history.$SSH_INCOMING_USER # elif [[ "$ENVIRONMENT" == "CISM" ]]; then if [[ -d "/home/arsystem/HOME/sgaisel/bash_history" ]]; then export HISTFILE=/home/arsystem/HOME/sgaisel/bash_history/${USER}_$(uname -n) log_info "using bash history $HISTFILE" else echo "no 'HOME' found, using standard history file" fi # alias tree="find ./ -type d | sed -e 's/[^-][^\/]*\//--/g;s/--/ |-/'" # fi # use own vim parameters if available # if [[ -f "$HOME/HOME/sgaisel/.vimrc" ]]; then # echo 'using .vimrc from /home/arsystem/HOME/sgaisel' # alias vi="vim --cmd 'set rtp^=/home/arsystem/HOME/sgaisel/.vim' -u /home/arsystem/HOME/sgaisel/.vimrc" # fi #fi # avoid '^?' in vim # see https://vim.fandom.com/wiki/Backspace_and_delete_problems stty erase '^?' # Set Title, see https://superuser.com/questions/249293/rename-tmux-window-name-to-prompt-command-ps1-or-remote-ssh-hostname settitle() { printf "\033k$1\033\\" } # settitle "$(uname -n)" settitle "$myEnv ($(uname -n))" export LS_OPTIONS='--color=auto' eval "$(dircolors -b)" alias ls='ls $LS_OPTIONS' # Some aliases to tail logfiles alias tailMisc='tail -f /srv/CISM/log-data/CONTEXT_misc/cism-misc.log' alias tailWS='tail -f /srv/CISM/log-data/CONTEXT_ws/cism-ws.log' alias tailGraph='tail -f /srv/CISM/log-data/CONTEXT_graph/cism-graph.log' alias tailBB='tail -f /srv/CISM/log-data/CONTEXT_bb/cism-bb.log' alias tailKM='tail -f /srv/CISM/log-data/CONTEXT_km/cism-km-main.log' alias cs='/srv/CISM/sbin/ALLRC status | grep -B 2 -e active -e inactive' alias dev='cd /srv/CISM/release-management/check-dev' alias stg='cd /srv/CISM/release-management/rpm-stg' # most used netcat alias alias n='netcat -vz -w 10 ' alias psg='ps -aux | grep -v grep | grep ' # Some functions (some by c't magazine) cdl() { cd "$@" if [ "$?" == 0 ]; then ls fi } backup() { cp -p "$@" "$@".backup-$(date +%Y-%m-%d_%H_%M_%S) } extract() { case $1 in *.tar.bz2) tar xvjf $1 ;; *.tar.gz|*.tgz) tar xvfz $1 ;; *.zip) unzip $1 ;; *) echo "Not supported: $1" ;; esac } # extend Path if [ "$(dnsdomainname)" = "emea.isn.corpintra.net" ];then PATH=$PATH:/home/arsystem/HOME/sgaisel/bin fi