| 1 | #! /bin/bash |
| 2 | # Print info and a logo for interactive shells: |
| 3 | |
| 4 | function OUTPUT () { |
| 5 | # Define our variables |
| 6 | HOST=$(echo $HOSTNAME |cut -d"." -f1) |
| 7 | K_v=$(uname -r) |
| 8 | K_ar=$(uname -m) |
| 9 | OS=$(cat /etc/slackware-version) |
| 10 | LOAD=$(uptime |cut -d " " -f12-) |
| 11 | PKGS=$(/bin/ls -1 /var/log/packages/ |wc -l) |
| 12 | # DE=$(env |grep DESKTOP_SESSION |cut -d "/" -f5) |
| 13 | USERS=$(who -s |wc -l) |
| 14 | |
| 15 | # Define or colors |
| 16 | CYAN="\e[1;36m" |
| 17 | ORANGE="\e[1;33m" |
| 18 | MAGENTA="\e[1;35m" |
| 19 | BLUE="\e[1;34m" |
| 20 | RED="\e[1;31m" |
| 21 | GREEN="\e[1;32m" |
| 22 | WHITE="\e[1;37m" |
| 23 | CLEAR="\e[0;0m" |
| 24 | |
| 25 | USER_COLOR=$GREEN |
| 26 | if [ ${UID} -eq 0 ] |
| 27 | then |
| 28 | USER_COLOR=$RED |
| 29 | fi |
| 30 | |
| 31 | |
| 32 | echo -e "$ORANGE" |
| 33 | echo -e " . ${CYAN},/${ORANGE}" |
| 34 | echo -e " oW ${CYAN},'/${ORANGE}" |
| 35 | echo -e " .' dN ${CYAN},' /${ORANGE}" |
| 36 | echo -e " c0; .... .;cdo. ${CYAN},' /\t${USER_COLOR}$USER ${CLEAR}@ ${BLUE}$HOST${ORANGE}" |
| 37 | echo -e " . x0kocclodddc..;,. ${CYAN},' /${ORANGE}" |
| 38 | echo -e " ,M, .;dx. ${CYAN},' /______,\t${MAGENTA}OS:\t\t${WHITE}${OS}${ORANGE}" |
| 39 | echo -e " cM.;:0dll' ,W; ${CYAN},' ,'\t${MAGENTA}KERNEL:\t\t${WHITE}$K_v - $K_ar${ORANGE}" |
| 40 | echo -e " xW x . .'ldc. 'Wd ${CYAN}.'_____ ,'\t${MAGENTA}LOAD AVG:\t${WHITE}${LOAD}${ORANGE}" |
| 41 | echo -e " KK k .::;. ;OK:.odol:' ${CYAN}/ ,'\t\t${MAGENTA}PACKAGES:\t${WHITE}${PKGS}${ORANGE}" |
| 42 | echo -e " .Ml.d.:; .;kXo. .. ${CYAN}/ ,'\t\t${MAGENTA}SHELL:\t\t${WHITE}${SHELL}${ORANGE}" |
| 43 | echo -e " 'x...xldkOkl. ${CYAN}/ ,'\t\t${MAGENTA}USERS:\t\t${WHITE}${USERS}${ORANGE}" |
| 44 | echo -e " .0xdxxd' ${CYAN}/ ,'${ORANGE}" |
| 45 | echo -e " KWXxo ${CYAN}/,'${ORANGE}" |
| 46 | echo -e " .. ${CYAN}/'${ORANGE}" |
| 47 | # reset colours |
| 48 | echo -en "$CLEAR" |
| 49 | echo |
| 50 | } |
| 51 | |
| 52 | # RUN IT!! |
| 53 | case $- in |
| 54 | *i* ) # We're interactive |
| 55 | clear |
| 56 | OUTPUT |
| 57 | ;; |
| 58 | esac |