Ubuntu Logo in color ASCII art

Post Reply
User avatar
LHammonds
Site Admin
Site Admin
Posts: 772
Joined: Fri Jul 31, 2009 6:27 pm
Are you a filthy spam bot?: No
Location: Behind You
Contact:

Ubuntu Logo in color ASCII art

Post: # 699Post LHammonds
Wed Jul 10, 2019 8:47 am

Original thread by lemix (2006) - Ubuntu Ascii Logo Program
- A program written in C to create the Ubuntu logo
2nd thread by coralsaw (2007) - Ubuntu Logo in color ASCII art
- An motd file that could be output to the screen
3rd thread by LHammonds (me) - Ubuntu Logo in color ASCII art
- The original location of this thread.

Here is the exact same look to the original logo output from the above posts but using Bash shell script...which could be incorporated into a dynamic motd (Message Of The Day) banner at login.

Color code chart has been included so you can easily swap out the 3 colors with any other colors you want.

logo-color.sh

Code: Select all

#!/bin/sh
## Black        0;30     Dark Gray     1;30
## Red          0;31     Light Red     1;31
## Green        0;32     Light Green   1;32
## Brown/Orange 0;33     Yellow        1;33
## Blue         0;34     Light Blue    1;34
## Purple       0;35     Light Purple  1;35
## Cyan         0;36     Light Cyan    1;36
## Light Gray   0;37     White         1;37

color1='\033[1;31m'  # light red
color2='\033[1;35m'  # light purple
color3='\033[1;33m'  # light yellow
nocolor='\033[0m'    # no color

printf "               ${color1}.-.${nocolor}\n"
printf "         ${color2}.-'\`\`${color1}(   )${nocolor}\n"
printf "      ${color3},\`\\ ${color2}\\    ${color1}\`-\`${color2}.${nocolor}\n"
printf "     ${color3}/   \\ ${color2}'\`\`-.   \`   ${color3}`lsb_release -s -d`${nocolor}\n"
printf "   ${color2}.-.  ${color3},       ${color2}\`___:  ${nocolor}`uname -srmo`${nocolor}\n"
printf "  ${color2}(   ) ${color3}:       ${color1} ___   ${nocolor}`date`${nocolor}\n"
printf "   ${color2}\`-\`  ${color3}\`      ${color1} ,   :${nocolor}\n"
printf "     ${color3}\\   / ${color1},..-\`   ,${nocolor}\n"
printf "      ${color3}\`./${color1} /    ${color3}.-.${color1}\`${nocolor}\n"
printf "         ${color1}\`-..-${color3}(   )${nocolor}\n"
printf "               ${color3}\`-\`${nocolor}\n"
Example output in color from an Ubuntu server:
Image

logo-nocolor.sh

Code: Select all

#!/bin/sh
printf "               .-.\n"
printf "         .-'\`\`(   )\n"
printf "      ,\`\\ \\    \`-\`.\n"
printf "     /   \\ '\`\`-.   \`   `lsb_release -s -d`\n"
printf "   .-.  ,       \`___:  `uname -srmo`\n"
printf "  (   ) :        ___   `date`\n"
printf "   \`-\`  \`       ,   :\n"
printf "     \\   / ,..-\`   ,\n"
printf "      \`./ /    .-.\`\n"
printf "         \`-..-(   )\n"
printf "               \`-\`\n"
Example output from an Ubuntu server.

Code: Select all

               .-.
         .-'``(   )
      ,`\ \    `-`.
     /   \ '``-.   `   Ubuntu 16.04.3 LTS
   .-.  ,       `___:  Linux 4.4.0-112-generic x86_64 GNU/Linux
  (   ) :        ___   Wed Feb 21 15:38:14 CST 2018
   `-`  `       ,   :
     \   / ,..-`   ,
      `./ /    .-.`
         `-..-(   )
               `-`
Extended color example code:

Code: Select all

#!/bin/sh
## Black        0;30     Dark Gray     1;30
## Red          0;31     Light Red     1;31
## Green        0;32     Light Green   1;32
## Brown/Orange 0;33     Yellow        1;33
## Blue         0;34     Light Blue    1;34
## Purple       0;35     Light Purple  1;35
## Cyan         0;36     Light Cyan    1;36
## Light Gray   0;37     White         1;37

color1='\033[1;31m'    # light red
color2='\033[1;35m'    # light purple
color3='\033[0;33m'    # light yellow
nocolor='\033[0m'      # no color
companyname='\033[1;34mCompany Name\033[0m'
divisionname='\033[1;32mDivision Name\033[0m'

printf "               ${color1}.-.${nocolor}\n"
printf "         ${color2}.-'\`\`${color1}(   )    ${companyname}${nocolor}\n"
printf "      ${color3},\`\\ ${color2}\\    ${color1}\`-\`${color2}.    ${divisionname}${nocolor}\n"
printf "     ${color3}/   \\ ${color2}'\`\`-.   \`   ${color3}`lsb_release -s -d`${nocolor}\n"
printf "   ${color2}.-.  ${color3},       ${color2}\`___:  ${nocolor}`uname -srmo`${nocolor}\n"
printf "  ${color2}(   ) ${color3}:       ${color1} ___   ${nocolor}`date +"%A, %e %B %Y, %r"`${nocolor}\n"
printf "   ${color2}\`-\`  ${color3}\`      ${color1} ,   :${nocolor}  Weather: `curl -s "http://rss.accuweather.com/rss/liveweather_rss.asp?metric=2&locCode=76501" | sed -n '/Currently:/ s/.*: \(.*\): \([0-9]*\)\([CF]\).*/\2°\3, \1/p'`\n"
printf "     ${color3}\\   / ${color1},..-\`   ,${nocolor}   Internal IP: `/sbin/ifconfig ens32 | /bin/grep "inet addr" | /usr/bin/cut -d ":" -f 2 | /usr/bin/cut -d " " -f 1`\n"
printf "      ${color3}\`./${color1} /    ${color3}.-.${color1}\`${nocolor}    External IP: `/usr/bin/wget -q -O - http://icanhazip.com/ | /usr/bin/tail`\n"
printf "         ${color1}\`-..-${color3}(   )${nocolor}    Uptime: `/usr/bin/uptime -p`\n"
printf "               ${color3}\`-\`${nocolor}\n"
Extended color example output:
Image

LHammonds

User avatar
LHammonds
Site Admin
Site Admin
Posts: 772
Joined: Fri Jul 31, 2009 6:27 pm
Are you a filthy spam bot?: No
Location: Behind You
Contact:

Ubuntu Server 16.04 LTS

Post: # 700Post LHammonds
Wed Jul 10, 2019 8:50 am

Ubuntu Server 16.04 LTS

For those that want to know how to use this in your SSH login in version 16.04, here's how:

#1 - Disable the header and help text sections of the current process by removing the execute permission.

Code: Select all

sudo chmod 644 /etc/update-motd.d/00-header
sudo chmod 644 /etc/update-motd.d/10-help-text
#2 - Create a new script that will execute before the remaining scripts (updates available, reboot required, etc.)

Code: Select all

sudo touch /etc/update-motd.d/01-custom-logo
sudo chmod 755 /etc/update-motd.d/01-custom-logo
sudo chown root:root /etc/update-motd.d/01-custom-logo
#3 - Now edit the 01-custom-logo file and copy/paste one of the above examples.

#4 - Make sure it runs how you would expect by executing it

Code: Select all

/etc/update-motd.d/01-custom-logo
#5 - Within 10 minutes your SSH login will display your crispy-new ASCII art

LHammonds

User avatar
LHammonds
Site Admin
Site Admin
Posts: 772
Joined: Fri Jul 31, 2009 6:27 pm
Are you a filthy spam bot?: No
Location: Behind You
Contact:

Ubuntu Server 18.04 LTS

Post: # 701Post LHammonds
Wed Jul 10, 2019 8:54 am

Ubuntu Server 18.04 LTS

For those that want to know how to use this in your SSH login for version 18.04, here's how:

#1 - Disable the header and help text sections of the current process by removing the execute permission.

Code: Select all

sudo chmod 644 /etc/update-motd.d/00-header
sudo chmod 644 /etc/update-motd.d/10-help-text
sudo chmod 644 /etc/update-motd.d/50-landscape-sysinfo
sudo chmod 644 /etc/update-motd.d/50-motd-news
sudo chmod 644 /etc/update-motd.d/80-livepatch
#2 - Create a new script that will execute before the remaining scripts (updates available, reboot required, etc.)

Code: Select all

sudo touch /etc/update-motd.d/01-custom-logo
sudo chmod 755 /etc/update-motd.d/01-custom-logo
sudo chown root:root /etc/update-motd.d/01-custom-logo
#3 - Now edit the 01-custom-logo file and copy/paste one of the above examples.

NOTE: If you want the Internal IP, the output format changed a bit in 18.04. Find this line:

Code: Select all

printf "     ${color3}\\   / ${color1},..-\`   ,${nocolor}   Internal IP: `/sbin/ifconfig ens32 | /bin/grep "inet addr" | /usr/bin/cut -d ":" -f 2 | /usr/bin/cut -d " " -f 1`\n"
and change it to:

Code: Select all

printf "     ${color3}\\   / ${color1},..-\`   ,${nocolor}   Internal IP: `/sbin/ifconfig ens32 | /bin/grep "inet " | /usr/bin/cut -d ":" -f 2 | /usr/bin/cut -d " " -f 10`\n"
Assuming your NIC is "ens32" but if not, make sure you change it to your NIC name so it can find it.

#4 - Make sure it runs how you would expect by executing it

Code: Select all

/etc/update-motd.d/01-custom-logo
#5 - Within 10 minutes your SSH login will display your crispy-new ASCII art

Post Reply