
#!/bin/bash
# File	: upd_decarbon.sh
# By	: Maarten.deBoer, 201019
# Subject	: Script to update the decarbon website
#(0.2),201020	: Add unknown systems in 1st row
#(0.3),201103	: Mod. to (new) structure
#(0.4),201103	: Upd. some text
#(0.5),201104	: Upd. with newest file in DATADIR
#(0.6),201104	: Added DETAIL, SYSNAME -> CLUSTERNAME
#(0.7),201105	: Added overview of INPUT-dir (input.html)
#(0.8),201105	: Add HTML_TOP(), HTML_FOOTER()
#(0.9),201105	: Add mailing some pages to extern
#(0.10),201110	: Added disks (& POOLSFILE * DISKSFILE)
#(0.11),201110	: Add DISKMODELINFO
#(0.12),201111	: Add. EXTRA wiki & USAGE()
#(0.13),201112	: Mod. to # SSD : HDD
#(0.14),201116	: Mod. disks 1st, 2nd aggr sizes
#(0.15),201116	: Added TITLE2, Mod. NO AGGR only disks (numbers)
#(0.16),201126	: Added AVG_PWR for SSD & HDD
#(0.17),201130	: Mod. unknown
#(0.18),201202	: Mod. PWR var (if empty, then not)
#(0.19),201203	: Add LASTUPDATSERVER status
#(0.20),201203	: Change TXTFILE to EXPLFILE in separate page
#(0.21),201216	: Added sFTP to it
#(0.22),201216	: Added sFTP status in EXTRA
#(0.23),210105 	: Mod. TITLE
#(0.24),210121	: Mod. IMG width
#(0.25),210203	: PROCDIR -> HISTORYDIR
#(0.26),210208	: Added check for last upload
#(0.27),210210	: Mod. to copy last disks-file to data/country-systems-disks.csv
#(0.28),210216	: Mod. some at "Getting LAST upload-server-names", BGC for DISKMODEL
#(0.29),210218	: Added --ftp-to-cita
#(0.30),210305	: Mod. LAST server
#(0.31),210305	: Added ENV's / country (country2environment.csv)
#(0.32),210305	: Added country at the bottom of Dashboard
#(0.33),210308	: Mod. LAST server with singe hostname (and not FQHN)
#(0.34),210309	: Upd. display 
#(0.35),210311	: Upd 7mode -> 7m, Add SRV_CHK
#(0.36),210312	: Some Mod's
#(0.37),210325	: When nothing in Unknown, then not at screen + (PROCDATE)= today, then green
#(0.38),210326	: "red" count at bottom of countries
#(0.39),210401	: Add PROCDATE for DATA_DISKS_FILE
#(0.40),210408	: Mod TYPE to TYPE_PART
PGM="`basename $0|cut -d\. -f1`"
VER="0.40"
TMP="/tmp/${PGM}.$$"
BASEDIR="/appl/netapp/decarbon"
LOG="${BASEDIR}/log/${PGM}.log"
RCFILE="${BASEDIR}/etc/${PGM}.rc"
UP_DATI=`date +%Y-%m-%d-%H-%M-%S`
MAIL=1
MAILTO="maarten.deboer@atos.net"
#MAILTO="maarten.deboer@atos.net cristian-alexandru.suba@atos.net"
#TXTFILE="${BASEDIR}/etc/${PGM}.txt"
EXPLFILE="${BASEDIR}/etc/${PGM}.expl"
#HTMLMAILTO="atos@agrarix.it"
#
# Google: "Average ssd power consumption"
# HDD = 9.1 W
# SSD = 0.06 W (60 mW)
#AVG_PWR_SSD_MW="60"
AVG_PWR_SSD_MW=""
#AVG_PWR_HDD_MW="9100" 
AVG_PWR_HDD_MW="" 
DATA_DISKS_FILE="${BASEDIR}/data/country-systems-disks.csv"
SRV_CHK=""
PROCDATE="`date +%Y-%m-%d`"

DATADIR="${BASEDIR}/data"
ETCDIR="${BASEDIR}/etc"
DETAILDIR="${BASEDIR}/details"
INDIR="${BASEDIR}/input"
DISKMODELINFO="${BASEDIR}/etc/diskmodel2info.csv"
HISTORYDIR="${BASEDIR}/history"
# based on information in .ssh/config (Host & PORT!)
# -b(atch) is used
SFTP_HOST="CITA-CAT"
FTP2CITA=""
COUNTRY2ENV="${BASEDIR}/etc/country2environment.csv"

PAGEDIR="/appl/netapp/html/decarbon"
#TITLE="Storage DeCarbonize Dashboard"
TITLE="S&DP Decarbonization Dashboard"
TITLE2="Number of disks"

#PROCDATE=`date +%Y-%m-%d --set=yesterday`


HTML_TOP()
{
  HTML_PAGE="${1}"
  touch ${HTML_PAGE}
  echo "<!DOCTYPE html>" > ${HTML_PAGE}
  echo "<HTML>" >> ${HTML_PAGE}
  echo "<HEAD>" >> ${HTML_PAGE}
  echo "<META charset='UTF-8'>" >> ${HTML_PAGE}
  echo "<META name='author' content='Maarten de Boer' />" >> ${HTML_PAGE}
  echo "<META name='author' content='Maarten de Boer' />" >> ${HTML_PAGE}
  echo "<META name='generator' content='${PGM} v${VER}' />">> ${HTML_PAGE}
  echo "<META name='up-dati' content='${UP_DATI}' />">> ${HTML_PAGE}
  echo "<TITLE>${TITLE}</TITLE>" >> ${HTML_PAGE}
  echo "<link rel="icon" href="http://atozero.eu/AtoZero-icon-4x4.png" type="image/png">" >> ${HTML_PAGE}
  echo "<basefont face='verdana'>" >> ${HTML_PAGE}
  echo "</HEAD>" >> ${HTML_PAGE}

#echo "<BODY aLink=red bgColor=#D3D0D3 link=red text=#000000 vLink=red>" >> ${PAGE}

  echo "<BODY aLink=blue bgColor=lightgrey link=blue text=#000000 vLink=blue>" >> ${HTML_PAGE}
  echo "<TABLE BORDER=0 WIDTH='100%' ID='top-part'>" >> ${HTML_PAGE}
  echo "  <TR HEIGHT=40px>" >> ${HTML_PAGE}
#echo "  <TD BGCOLOR=#5BC3FC>" >> ${PAGE}
  echo "    <TD BGCOLOR=lightgreen>" >> ${HTML_PAGE}
  echo "      <A HREF='./'>" >> ${HTML_PAGE}
  echo "        <FONT COLOR=darkgrey face='verdana' size='8'> <B>${TITLE}</B> </FONT>" >> ${HTML_PAGE}
  echo "      </A>" >> ${HTML_PAGE}
  echo "      <BR>" >> ${HTML_PAGE}
  if [ "${TITLE2}" != "" ]; then
    echo "      <FONT COLOR=black face='verdana' size='4'> <CENTER> <B>${TITLE2}</B> </FONT>" >> ${HTML_PAGE}
  fi  # TITLE2
#  echo "      <DIV align=left>" >> ${HTML_PAGE}
#  echo "      <FONT COLOR=black face='verdana' size='3'>For storage environments in country => </A>  </FONT> " >> ${HTML_PAGE}
#  echo "     </B> </FONT> " >> ${HTML_PAGE}
  echo "      <DIV align=right>" >> ${HTML_PAGE}
  echo "      <FONT COLOR=black face='verdana' size='1'>At `hostname` </B> </FONT>" >> ${HTML_PAGE}
  echo "      </DIV>" >> ${HTML_PAGE}
  echo "    </TD>" >> ${HTML_PAGE}

  echo "    <TD BGCOLOR=lightgreen width='10%'>" >> ${HTML_PAGE}
  echo "      <A HREF='https://eco-act.com/' target="_blank"> " >> ${HTML_PAGE}
  echo "        <IMG SRC='atozero.jpg' width='50%' > " >> ${HTML_PAGE}
  echo "      </A>" >> ${HTML_PAGE}
  echo "    </TD>" >> ${HTML_PAGE}

  echo "  </TR>" >> ${HTML_PAGE}
  echo "</TABLE>" >> ${HTML_PAGE}
}

HTML_FOOTER()
{
  HTML_PAGE="${1}"
  touch ${HTML_PAGE}
  echo "    <TABLE BORDER=0 WIDTH='100%' ID='footer'>" >> ${HTML_PAGE}
  echo "      <TR>" >> ${HTML_PAGE}
  echo "        <TD bgColor=#0066A1 >" >> ${HTML_PAGE}
  echo "          <FONT COLOR=white face='Verdana' size='1'>" >> ${HTML_PAGE}
  echo "            <CENTER>" >> ${HTML_PAGE}
  echo "Contact & Content Owner: <A HREF=mailto:Maarten.deBoer@Atos.net>Maarten de Boer</A> |Last Update: `date` [${PGM} v${VER}] <BR>" >> ${HTML_PAGE}
  echo "For internal use (c) Atos S.A. `date +%Y` all rights reserved. Reproduction in whole or in part is prohibited without the written consent of Atos SA." >> ${HTML_PAGE}
  echo "            </CENTER>" >> ${HTML_PAGE}
  echo "          </FONT>" >> ${HTML_PAGE}
  echo "        </TD>" >> ${HTML_PAGE}
  echo "      </TR>" >> ${HTML_PAGE}
  echo "    </TABLE>" >> ${HTML_PAGE}
  echo "  </BODY>" >> ${HTML_PAGE}
  echo "</HTML>" >> ${HTML_PAGE}
}


USAGE()
{
  echo "Usage: ${PGM} [options]"
  echo "Options                 : "
  echo "     -d | --procdate    : define (new) PROCessDATE (${PROCDATE})"
  echo "     -f | --ftp-to-cita : Ftp to CITA (${SFTP_HOST})"
  echo "     -h | --help        : This help"
  echo "     -s | --srv-chk     : with SeRVer CHecK (< 7 days)"
  echo "     -r | --rc          : change Rcfile (${RCFILE})"
  echo "     --indir            : change INputDIRectory (${INDIR})"
  echo "     -V                 : Version"
}
while [ ${#} -gt 0 ]
do
  case "${1}" in
    -h | --help)  USAGE; exit 1 ;;
    -f | --ftp-to-cita) FTP2CITA=1 ;;
    -s | --srv-chk) SRV_CHK=1 ;;
    -d | --procdate) PROCDATE="${2}"; shift ;;
    -r | --rc) RCFILE="${2}"; shift ;;
    --indir) INDIR="${2}"; shift ;;
    -x)  set -x ;;
    -V)  echo "Version=${VER}" ; exit 1 ;;
    *) echo "Option ${1} not found." ; USAGE; exit 1 ;;
  esac
  shift
done


echo "`date` ${PGM} ${VER} started."|tee -a ${LOG}
touch ${TMP}

if [ -f ${RCFILE} ]; then
  echo "  RCFILE(${RCFILE}) found. Using it ..."|tee -a ${LOG}
  . ${RCFILE}
fi

CLUSTERFILE="${BASEDIR}/etc/country2systems2cluster2vendor.csv"
PAGE="${PAGEDIR}/index.html"
#DATAFILE="${BASEDIR}/data/country-systems_${PROCDATE}.csv"
#UNKNOWNFILE="${BASEDIR}/data/unknown-systems_${PROCDATE}.csv"

echo "PGM=${PGM}"
echo "VER=${VER}"
echo "LOG=${LOG}"
echo "CLUSTERFILE=${CLUSTERFILE}"
echo "DATADIR=${DATADIR}"
#echo "DATAFILE=${DATAFILE}"
echo "DETAILDIR=${DETAILDIR}"
echo "HISTORYDIR=${HISTORYDIR}"
echo "INDIR=${INDIR}"
echo "PAGE=${PAGE}"
echo "PAGEDIR=${PAGEDIR}"
echo "PROCDATE=${PROCDATE}"
#echo "PROCDATE=${PROCDATE}"
echo "SRV_CHK=${SRV_CHK}"
echo "TITLE=${TITLE}"
#echo "UNKNOWNFILE=${UNKNOWNFILE}"
sleep 1

if [ ! -f ${CLUSTERFILE} ]; then
  echo "  NO NO CLUSTER-file (${CLUSTERFILE}) found. Exiting ..."|tee -a ${LOG}
  exit 4
fi
if [ ! -d ${DATADIR} ]; then
  echo "  NO DATA-dir (${DATADIR}) found. Exiting ..."|tee -a ${LOG}
  exit 5
fi
if [ ! -d ${DETAILDIR} ]; then
  echo "  NO DETAIL-dir (${DETAILDIR}) found. Exiting ..."|tee -a ${LOG}
  exit 6
fi
if [ ! -f ${DISKMODELINFO} ]; then
  echo "  NO DISKMODEL-INFO (${DISKMODELINFO}) found. Exiting ..."|tee -a ${LOG}
  exit 7
fi
if [ ! -d ${HISTORYDIR} ]; then
  echo "  NO PROC-dir (${HISTORYDIR}) found. Exiting ..."|tee -a ${LOG}
  exit 8
fi

# "dummy" country-systems-pools
touch ${DATADIR}/country-systems-pools_YYYY-MM-DD-HH-MM-SS.csv
touch ${DATADIR}/country-systems-disks_YYYY-MM-DD-HH-MM-SS.csv


HTML_TOP ${PAGE}

echo "<TABLE BORDER=1 WIDTH='100%' cellspacing='0' ID='dashboard'>" >> ${PAGE}

echo "  <TR>" >> ${PAGE}

# Check if unknown-files are not with info (2nd field)
ANSW=`cat ../data/unknown-systems_2*|grep -v OWNER|awk -F\; '{print $2}'| grep -v "^$"`
if [ "${ANSW}" != "" ]; then
  echo "    <TD>" >>  ${PAGE}
  echo "      <FONT COLOR=black face='verdana' size='2'><B>Un-known</FONT>" >> ${PAGE}
  echo "    </TD>" >>  ${PAGE}
fi  # ANSW}" != ""



# Countries
echo "  Country (names) ..."
# Exclude also empty lines (`grep -v ^$`) 
cat ${CLUSTERFILE}|grep -v ^#|grep -v '^$'|awk -F\; '{print $1}'|sort -u|while read COUNTRY REST
do
#  echo "  ${COUNTRY} "
# selecte LAST POOLS-file available
  DISKSFILE=`grep "^${COUNTRY};" ${DATADIR}/country-systems-disks_*.csv|cut -d\: -f1|sort -u|tail -1`
#  POOLSFILE=`grep "^${COUNTRY};" ${DATADIR}/country-systems-pools_*.csv|cut -d\: -f1|sort -u|tail -1`

# Get CPROCDATE /country
  CPROCDATE=`echo ${DISKSFILE}|cut -d\_ -f2|cut -d\. -f1`
  if [ "${CPROCDATE}" != "" ]; then
    CPROCDATE="(${CPROCDATE})"
  fi

  FCOLOR="black"
# If CPROCDATE is today, then green
  if [ "${CPROCDATE}" = "(`date +%Y-%m-%d`)" ]; then
    FCOLOR="green"
  fi  # CPROCDATE = today
  echo "    <TD>" >>  ${PAGE}
  echo "      <FONT COLOR=black face='verdana' size='2'><B><CENTER>${COUNTRY} <BR></FONT>" >> ${PAGE}
  echo "      <FONT COLOR=${FCOLOR} face='verdana' size='1'>${CPROCDATE}</FONT> </CENTER></B>" >> ${PAGE}
  echo "    </TD>" >>  ${PAGE}
done  # ${CLUSTERFILE}
echo "  </TR>" >> ${PAGE}

echo "  <TR>" >> ${PAGE}

# Check if unknown-files are not with info (2nd field)
ANSW=`cat ../data/unknown-systems_2*|grep -v OWNER|awk -F\; '{print $2}'| grep -v "^$"`
if [ "${ANSW}" != "" ]; then
  echo "    <TD>" >>  ${PAGE}
# Check if a unknown-file has some information
  cat ../data/unknown-systems_*.csv|grep -v ^#|awk -F\; '{print $2}'|grep -v OWNER|sort -u|while read LINE
    do
      if [ "${LINE}" != "" ]; then
        echo "    <FONT COLOR=red face='verdana' size='2'> ${LINE} </FONT> <BR>" >> ${PAGE}
      fi  # LINE
    done  # cat
  echo "    </TD>" >>  ${PAGE}

fi  # ANSW}" != "" 


echo "  Country info ..."
cat ${CLUSTERFILE}|grep -v ^#|grep -v '^$'|awk -F\; '{print $1}'|sort -u|while read COUNTRY REST
do
  echo "  ${COUNTRY} "
  echo "    <TD valign=top>" >>  ${PAGE}
  RED_ENV_CNT=0
# ENV's /country
  cat ${COUNTRY2ENV}|grep "^${COUNTRY};"|awk -F\; '{print $3}'|sort -u |while read ENV REST3
  do
    LAST_ENV_DATE=`grep "\-${ENV}" ${DATADIR}/*.csv|grep ":${COUNTRY}"|cut -d\: -f2|awk -F\; '{print $6}'|sort -u|tail -1`
    echo "    ${ENV} : LAST_ENV_DATE=${LAST_ENV_DATE}"
    if [ "${LAST_ENV_DATE}" = "" ]; then
      echo "      <FONT COLOR=red face='verdana' size='3'><B>${ENV}</B><BR>" >>  ${PAGE}
      RED_ENV_CNT=`expr ${RED_ENV_CNT} + 1`
    else
      echo "      <FONT COLOR=green face='verdana' size='2'><B>${LAST_ENV_DATE}</B><BR>" >>  ${PAGE}
    fi   # LAST_ENV_DATE}" = ""

    grep "^${COUNTRY};" ${DATADIR}/*${LAST_ENV_DATE}*.csv | grep "${ENV};"|while read LINE REST4
    do
      CLUSTER_NAME=`echo ${LINE}|awk -F\; '{print $2}'`
      VENDOR_NAME=`echo ${LINE}|awk -F\; '{print $3}'`
      SSD_DISKS=`echo ${LINE}|awk -F\; '{print $4}'`
      HDD_DISKS=`echo ${LINE}|awk -F\; '{print $5}'`

      echo "      <FONT COLOR=green face='verdana' size='1'>${CLUSTER_NAME}<BR>" >>  ${PAGE}
      echo "      <FONT COLOR=green face='verdana' size='1'>${SSD_DISKS}:${HDD_DISKS} <BR>" >>  ${PAGE}

    done  # read LINE
    echo "${COUNTRY};${RED_ENV_CNT};" >> ${TMP}.red-env-cnt
  done  # read ENV REST3
  echo "      <HR>" >>  ${PAGE}


# selecte LAST file available
# selecte LAST file available
  POOLSFILE=`grep "^${COUNTRY};" ${DATADIR}/country-systems-pools_*.csv|cut -d\: -f1|sort -u|tail -1`
  DISKSFILE=`grep "^${COUNTRY};" ${DATADIR}/country-systems-disks_*.csv|cut -d\: -f1|sort -u|tail -1`

#echo "POOLSFILE=${POOLSFILE}"
#echo "DISKSFILE=${DISKSFILE}"
  CPROCDATE=`echo ${DISKSFILE}|cut -d\_ -f2|cut -d\. -f1`
  if [ "${DISKSFILE}" != "" ]; then
# ---------------------------------------
# SYStem
#  cp ${DISKSFILE} ${DATADIR}/country-systems-disks.csv
# country; system(cluster / HA)name; vendor ; SSD [#]; HDD [#]; " 
  cat ${DISKSFILE}|grep "^${COUNTRY};"|sort -u|grep -v ^#|sort|awk -F\; '{print $2,$3}'|while read CLUSTERNAME VENDOR REST
  do
    echo "   ${CLUSTERNAME} (${VENDOR}) [${CPROCDATE}]"
# When a SYStemNAME, then process for html-PAGE
    if [ "${CLUSTERNAME}" != "" ]; then

# update DETAILs
      if [ -f ${DETAILDIR}/${COUNTRY}_${CLUSTERNAME}_${CPROCDATE}_disks.csv ]; then
        DPAGE="${PAGEDIR}/${COUNTRY}_${CLUSTERNAME}.html"
        HTML_TOP ${DPAGE}


# nlnaf100;nlnaf100-01;n01a0601;hdd;100402
        echo "  ${DETAILDIR}/${COUNTRY}_${CLUSTERNAME}_${CPROCDATE}_disks.csv"
        echo "    <H2> Details of ${CLUSTERNAME} disks :   </H2>" >> ${DPAGE}
        echo "    <TABLE border=1 cellspacing='0' ID='disk-details'>" >> ${DPAGE}
        echo "      <TR>" >> ${DPAGE}
        echo "        <TH> COUNTRY </TH>" >> ${DPAGE}
        echo "        <TH> CLUSTERNAME </TH>" >> ${DPAGE}
        echo "        <TH> SYSTEMNAME </TH>" >> ${DPAGE}
        echo "        <TH> DISKMODEL </TH>" >> ${DPAGE}
        echo "        <TH> DISKCNT </TH>" >> ${DPAGE}
        echo "        <TH> TYPE </TH>" >> ${DPAGE}
        echo "        <TH> USABLE_GB </TH>" >> ${DPAGE}
        echo "      </TR>" >> ${DPAGE}
# DISKS
        cat ${DETAILDIR}/${COUNTRY}_${CLUSTERNAME}_${CPROCDATE}_disks.csv|sort -u|grep -v ^#|while read LINE
        do
          CLUSTERNAME=`echo ${LINE}|cut -d\; -f2`
          SYSTEMNAME=`echo ${LINE}|cut -d\; -f3`
          DISKMODEL=`echo ${LINE}|cut -d\; -f4`
          DISKCNT=`echo ${LINE}|cut -d\; -f5`
          TYPE=`echo ${LINE}|cut -d\; -f6`
          TYPE_PART=`echo ${LINE}|cut -d\; -f6|cut -d" " -f1`
          USABLE_GB=`echo ${LINE}|cut -d\; -f7`
          echo "      <TR>" >> ${DPAGE}
          echo "        <TD> ${COUNTRY} </TD>" >> ${DPAGE}
          echo "        <TD> ${CLUSTERNAME} </TD>" >> ${DPAGE}
          echo "        <TD> ${SYSTEMNAME} </TD>" >> ${DPAGE}
          if [ "${DISKMODEL}" = "7mode" ]; then
            BGC_DISKMODEL="red"
          else
            BGC_DISKMODEL=""
          fi
          echo "        <TD BGCOLOR=${BGC_DISKMODEL}> ${DISKMODEL} </TD>" >> ${DPAGE}
          echo "        <TD> ${DISKCNT} </TD>" >> ${DPAGE}
          if [ "${TYPE_PART}" = "ssd" ] || [ "${TYPE_PART}" = "SSD" ]; then
            echo "        <TD BGCOLOR=green> ${TYPE} </TD>" >> ${DPAGE}
          else
            if [ "${TYPE_PART}" = "legacy" ]; then
              echo "        <TD BGCOLOR=red> ${TYPE} </TD>" >> ${DPAGE}
            else
              echo "        <TD BGCOLOR=orange> ${TYPE} </TD>" >> ${DPAGE}
            fi
          fi  # TYPE
          echo "        <TD> ${USABLE_GB} </TD>" >> ${DPAGE}
          echo "      </TR>" >> ${DPAGE}
        done  # cat .csv
        echo "      <TR>" >> ${DPAGE}
        echo "        <TH> Name of country" >> ${DPAGE}
        echo "        <TH> Name of location / cluster </TH>" >> ${DPAGE}
        echo "        <TH> Name of system </TH>" >> ${DPAGE}
        echo "        <TH> Disk model / tech </TH>" >> ${DPAGE}
        echo "        <TH> Number of disks </TH>" >> ${DPAGE}
        echo "        <TH> Type of disks [sdd, hdd, hybrid, legacy] </TH>" >> ${DPAGE}
        echo "        <TH> Size in GiB </TH>" >> ${DPAGE}
        echo "      </TR>" >> ${DPAGE}
        echo "    </TABLE>" >> ${DPAGE}
        HTML_FOOTER ${DPAGE}

      fi  # DETAILs _disks

      if [ "${HTMLMAILTO}" != "" ]; then
        cat ${DPAGE}|mailx -s "html:${COUNTRY}_${CLUSTERNAME}.html" ${HTMLMAILTO}
        echo "  Mailed ${COUNTRY}_${CLUSTERNAME}.html to ${HTMLMAILTO}"|tee -a ${LOG}
      fi

      SSD_CNT=`grep "${COUNTRY};" ${DISKSFILE}|grep "${CLUSTERNAME};"|grep -v ^#|sort -u|head -1|awk -F\; '{print $4}'`
      if [ "${SSD_CNT}" = "" ]; then
        SSD_CNT=0
      fi
      HDD_CNT=`grep "${COUNTRY};" ${DISKSFILE}|grep "${CLUSTERNAME};"|grep -v ^#|sort -u|head -1|awk -F\; '{print $5}'`
      if [ "${HDD_CNT}" = "" ]; then
        HDD_CNT=0
      fi
      echo "     S:${SSD_CNT} H:${HDD_CNT} "
  
      echo "      <TABLE BORDER=0 width='0%' cellspacing='0' ID='pct-bar'>" >> ${PAGE}
# Calculate PCT for "bar"-graph
      TTL_CNT=`expr ${SSD_CNT} + ${HDD_CNT}`
      if [ ${TTL_CNT} -gt 0 ]; then
        PCT1=`expr ${SSD_CNT} \* 100 / ${TTL_CNT}`
        PCT2=`expr ${HDD_CNT} \* 100 / ${TTL_CNT}`
      else
        PCT1=0
        PCT2=0
      fi
      echo "      ${PCT1}% : ${PCT2}% / #${TTL_CNT}"

      if [ "${AVG_PWR_HDD_MW}" != "" ]; then
        HDD_PWR_W=`expr ${HDD_CNT} \* ${AVG_PWR_HDD_MW} / 1000`
        echo "      H:${HDD_PWR_W}Watt"
      else
        HDD_PWR_W=0
      fi
      if [ "${AVG_PWR_SSD_MW}" != "" ]; then
        SSD_PWR_W=`expr ${SSD_CNT} \* ${AVG_PWR_SSD_MW} / 1000`
        echo "      S:${SSD_PWR_W}W"
      else 
        SSD_PWR_W=0
      fi

      V=""
      if [ "${VENDOR}" = "netapp" ]; then
        V="N"
      fi
      if [ "${VENDOR}" = "emc" ]; then
        V="E"
      fi
      if [ "${VENDOR}" = "hds" ]; then
        V="H"
      fi
#echo "VENDOR=${VENDOR} V=${V}"

# Count (SSD | HDD-)disks
#      NR_SSD=`grep "${COUNTRY};" ${DISKSFILE}|grep "${CLUSTERNAME};"|sort -u|grep -v ^#|sort|awk -F\; '{print $4}'`
#      NR_HDD=`grep "${COUNTRY};" ${DISKSFILE}|grep "${CLUSTERNAME};"|sort -u|grep -v ^#|sort|awk -F\; '{print $5}'`

      echo "        <TR>" >> ${PAGE}
# The CLUSTERNAME part
      if [ -f ${PAGEDIR}/${COUNTRY}_${CLUSTERNAME}.html ]; then
        echo "          <TD colspan=2 WIDTH='1%'><FONT COLOR=black face='verdana' size='2'><A HREF=${COUNTRY}_${CLUSTERNAME}.html>${V}:${CLUSTERNAME}:</A></FONT> </TD>" >> ${PAGE}
      else
        echo "          <TD colspan=2 WIDTH='1%'><FONT COLOR=black face='verdana' size='2'>${V}:${CLUSTERNAME}:</FONT> </TD>" >> ${PAGE}
      fi
      echo "        </TR>" >> ${PAGE}

      echo "        <TR>" >> ${PAGE}
# The BAR part
      if [ ${PCT1} -gt 0 ]; then
        echo "          <TD WIDTH=${PCT1}% BGCOLOR=green><FONT COLOR=black face='verdana' size='2'>${SSD_CNT}</FONT> <BR> <DIV align='right'> <FONT COLOR=black face='verdana' size='1'>${PCT1}</DIV></FONT>" >> ${PAGE}
      else
        echo "          <TD WIDTH=${PCT1}% BGCOLOR=green><FONT COLOR=black face='verdana' size='2'>${SSD_CNT}" >> ${PAGE}
      fi  # PCT1} -gt 0
      if [ ${SSD_PWR_W} -gt 0 ]; then
        echo "          =${SSD_PWR_W}W" >> ${PAGE}
      fi
      echo "          </FONT> </TD>" >> ${PAGE}

      echo "          <TD WIDTH=${PCT2}% BGCOLOR=orange><FONT COLOR=black face='verdana' size='2'>${HDD_CNT}</FONT> <BR> <DIV align='left'> <FONT COLOR=black face='verdana' size='1'>|${PCT2}%</DIV></FONT>" >> ${PAGE}
      if [ ${HDD_PWR_W} -gt 0 ]; then
        echo "          =${HDD_PWR_W}W" >> ${PAGE}
      fi
      echo "          </FONT> </TD>" >> ${PAGE}


#      echo "          <TD WIDTH=${PCT3}% BGCOLOR=red><FONT COLOR=black face='verdana' size='2'>${OLD_TB}</FONT> </TD>" >> ${PAGE}

      echo "        </TR>" >> ${PAGE}

      echo "      </TABLE>" >> ${PAGE}

    fi  # CLUSTERNAME <> ""

  done  # CLUSTERNAME

  fi  # POOLSFILE <> ""

  echo "<HR>" >>  ${PAGE}


# Getting LAST upload-server-names 
  echo "      Getting LAST upload-server-names"
#  echo "      COUNTRY=${COUNTRY}"
  cp /dev/null ${TMP}
  grep ^${COUNTRY} ${CLUSTERFILE}|cut -d\; -f2|while read SYSNAME REST1
  do
#    echo "        SYSNAME=${SYSNAME}"
    if [ "${SYSNAME}" != "" ]; then
      grep "^${SYSNAME}" ${HISTORYDIR}/*.csv|cut -d\: -f1|cut -d\_ -f2,3|cut -d\- -f1-3|sort -u|tail -1 >> ${TMP}
    fi  # SYSNAME}" != ""
  done  # grep
# 1st get SORTED server-list
  cat ${TMP}|sed 's/_/ /g'|awk '{print $1}'|sort -u|while read SERVER REST1
  do
    echo "        SERVER=${SERVER}"
    grep "${SERVER}" ${TMP}|sed 's/_/ /g'|awk '{print $2}'|sort -u|tail -1|while read SRVDATE REST2
    do
      echo "        SRVDATE=${SRVDATE} SERVER=${SERVER}"

# Check Server-Check
      if [ ${SRV_CHK} ]; then
# Add: Check for < 7 days (date +%s:604800). Otherwise "alert".
        SRVDATE_S=`date --date ${SRVDATE} +%s` 
        DATE_S=`date +%s` 
        DIFF_DATE_S=`expr ${DATE_S} - ${SRVDATE_S}`
        SERVER_SHORT=`echo ${SERVER}|cut -d\. -f1`
        if [ ${DIFF_DATE_S} -gt 604800 ]; then
          echo "      (${COUNTRY}) SERVER=${SERVER} SRVDATE=${SRVDATE} > 7 days (${DIFF_DATE_S})"|tee -a ${LOG}

          echo "No Decarbon update in 7 days from COUNTRY=${COUNTRY} SERVER=${SERVER} SRVDATE=${SRVDATE}." | mailx -s "NO Decarbon update from ${SERVER} in 7 days [${PGM} v${VER}]" ${MAILTO}
          echo "      <FONT COLOR=red face='verdana' size='3'><B>${SRVDATE} : ${SERVER_SHORT}</B> <BR> </FONT>" >>  ${PAGE}
        else
        
          echo "      <FONT COLOR=black face='verdana' size='1'>${SRVDATE} : ${SERVER_SHORT} <BR> </FONT>" >>  ${PAGE}
        fi  # DIFF_DATE_S
      fi  # SRV_CHK
    done  # grep
  done  # cat

#  cat ${TMP}|sort -u|sed 's/_/ /g'|while read SERVER SRVDATE REST2
#  do
#  done  # cat TMP

  cp /dev/null ${TMP}

  echo "    </TD>" >>  ${PAGE}

done  # ${CLUSTERFILE} > COUNTRY
# END of COUNTRY-loop


echo "  </TR>" >> ${PAGE}

echo "  <TR>" >> ${PAGE}

# Check if unknown-files are not with info (2nd field)
ANSW=`cat ../data/unknown-systems_2*|grep -v OWNER|awk -F\; '{print $2}'| grep -v "^$"`
if [ "${ANSW}" != "" ]; then
  echo "    <TD>" >>  ${PAGE}
  echo "      <FONT COLOR=black face='verdana' size='2'><B>Un-known</FONT>" >> ${PAGE}
  echo "    </TD>" >>  ${PAGE}
fi  # ${ANSW}" != ""

# Countries
# Exclude also empty lines (`grep -v ^$`) 
cat ${CLUSTERFILE}|grep -v ^#|grep -v '^$'|awk -F\; '{print $1}'|sort -u|while read COUNTRY REST
do
# selecte LAST POOLS-file available
  DISKSFILE=`grep "^${COUNTRY};" ${DATADIR}/country-systems-disks_*.csv|cut -d\: -f1|sort -u|tail -1`
#  POOLSFILE=`grep "^${COUNTRY};" ${DATADIR}/country-systems-pools_*.csv|cut -d\: -f1|sort -u|tail -1`
# Get CPROCDATE /country
  CPROCDATE=`echo ${DISKSFILE}|cut -d\_ -f2|cut -d\. -f1`
  if [ "${CPROCDATE}" != "" ]; then
    CPROCDATE="(${CPROCDATE})"
  fi

  echo "    <TD>" >>  ${PAGE}
  echo "      <FONT COLOR=black face='verdana' size='2'><B><CENTER>${COUNTRY}<BR></FONT>" >> ${PAGE}
# Result of the Red-ENV-counter
#  echo "  ${COUNTRY} : `cat ${TMP}.red-env-cnt`"
  RED_ENV_CNT=`grep "^${COUNTRY}" ${TMP}.red-env-cnt|tail -1|awk -F\; '{print $2}'`
  if [ ${RED_ENV_CNT} -gt 0 ]; then
    echo "      <FONT COLOR=red face='verdana' size='2'>${RED_ENV_CNT}</FONT>" >> ${PAGE}
  fi  # RED_ENV_CNT} -gt 0
  echo "    </TD>" >>  ${PAGE}
done  # ${CLUSTERFILE}
echo "  </TR>" >> ${PAGE}


echo "</TABLE>" >> ${PAGE}



# Create (EXTRA) Explanation-page

if [ -f ${EXPLFILE} ]; then
  EPAGE="${PAGEDIR}/Explanation.html"
  HTML_TOP ${EPAGE}
  echo "  <FONT COLOR=black face='verdana' size='1'>" >> ${PAGE}
  cat ${EXPLFILE}|while read LINE
  do
    echo "${LINE} <BR>" >> ${EPAGE}
  done  # EXPLFILE
  echo "  </FONT>" >> ${EPAGE}
  HTML_FOOTER ${EPAGE}
  if [ "${HTMLMAILTO}" != "" ]; then
    cat ${EPAGE}|mailx -s "html:Explanation.html" ${HTMLMAILTO}
    echo "  Mailed Explanation.html to ${HTMLMAILTO}"|tee -a ${LOG}
  fi  # HTMLMAILTO}" != ""
fi  # EXPL

# -------------------------------------------------
# sFTP here. Then status can be reported in EXTRA part
# When sFTP & ${DISKSFILE} found then
if [ ${FTP2CITA} ] && [ "${SFTP_HOST}" != "" ] && [ -f ${DATADIR}/country-systems-disks.csv ]; then
  echo "cd myhome" > ${TMP}.sftp
  echo "put country-systems-disks.csv" >> ${TMP}.sftp
  echo "ls -l" >> ${TMP}.sftp
  cd ${DATADIR}
  sftp -b ${TMP}.sftp ${SFTP_HOST} 1>> ${LOG} 2>&1
  EC=${?}
  echo "  sFTP-ed (EC=${EC}) to ${SFTP_HOST}"|tee -a ${LOG}
  rm ${TMP}.sftp
fi  # SFTP_HOST

# (sFTP)-log-view
LPAGE="${PAGEDIR}/log-page.html"
HTML_TOP ${LPAGE}
echo "  <TABLE border=0 cellspacing='0' ID='log-page'>" >> ${LPAGE}
echo "    <TR>" >> ${LPAGE}
echo "      <TH> LOG (last 7 rows): </TD>" >> ${LPAGE}
echo "    </TR>" >> ${LPAGE}
tail -7 ${LOG}|while read LINE
do
  echo "    <TR>" >> ${LPAGE}
  echo "      <TD> ${LINE} </TD>" >> ${LPAGE}
  echo "    </TR>" >> ${LPAGE}
done  # ls -1
echo "  </TABLE>" >> ${LPAGE}
HTML_FOOTER ${LPAGE}


# EXTRA : DATA_DISKS_FILE
# 1st copy the last disks-file to DATA_DISKS_FILE
cd ${DATADIR}
# Check if PROCDATE is the current date
# If so, then copy the LAST_DISKS_FILE
# Otherwise use the LAST_DISKS_FILE of PROCDATE
if [ "${PROCDATE}" = "`date +%Y-%m-%d`" ]; then
  LAST_DISKS_FILE=`ls -1 country-systems-disks_2*.csv| tail -1`
else
  LAST_DISKS_FILE=`ls -1 country-systems-disks_${PROCDATE}.csv| tail -1`
fi  # 
cp ${LAST_DISKS_FILE} ${DATA_DISKS_FILE}

#
DPAGE="${PAGEDIR}/data-disks-page.html"
HTML_TOP ${DPAGE}
echo "  <H2> Details of DATA_DISKS_FILE (${DATA_DISKS_FILE}): </H2>" >> ${DPAGE}
echo "  <TABLE border=1 cellspacing='0' ID='data-disks-page'>" >> ${DPAGE}
echo "    <TR>" >> ${DPAGE}
echo "      <TH>COUNTRY</TH>" >> ${DPAGE}
echo "      <TH>CLUSTERNAME</TH>" >> ${DPAGE}
echo "      <TH>VENDOR</TH>" >> ${DPAGE}
echo "      <TH>SSD</TH>" >> ${DPAGE}
echo "      <TH>HDD</TH>" >> ${DPAGE}
echo "      <TH>DATE</TH>" >> ${DPAGE}
echo "    </TR>" >> ${DPAGE}
# country; clustername; vendor (emc|hds|netapp); SSD [nr disks]; HDD [nr disks]; date (YYYY-MM-DD);
# p1;Code1;emc;0;126;2021-01-05;
cat ${DATA_DISKS_FILE}|grep -v country|while read LINE
do
  COUNTRY=`echo ${LINE}|awk -F\; '{print $1}'`
  CLUSTER=`echo ${LINE}|awk -F\; '{print $2}'`
  VENDOR=`echo ${LINE}|awk -F\; '{print $3}'`
  SSD_DISKS=`echo ${LINE}|awk -F\; '{print $4}'`
  HDD_DISKS=`echo ${LINE}|awk -F\; '{print $5}'`
  D_DATE=`echo ${LINE}|awk -F\; '{print $6}'`
  echo "    <TR>" >> ${DPAGE}
  echo "      <TD> ${COUNTRY} </TD>" >> ${DPAGE}
  echo "      <TD> ${CLUSTER} </TD>" >> ${DPAGE}
  echo "      <TD> ${VENDOR} </TD>" >> ${DPAGE}
  echo "      <TD> ${SSD_DISKS} </TD>" >> ${DPAGE}
  echo "      <TD> ${HDD_DISKS} </TD>" >> ${DPAGE}
  echo "      <TD> ${D_DATE} </TD>" >> ${DPAGE}
  echo "    </TR>" >> ${DPAGE}
done  # cat
echo "    <TR>" >> ${DPAGE}
echo "      <TH>Name of country</TH>" >> ${DPAGE}
echo "      <TH>Name of clustername</TH>" >> ${DPAGE}
echo "      <TH>Vendorname (emc|hds|netapp)</TH>" >> ${DPAGE}
echo "      <TH>Nr of SSD Disks</TH>" >> ${DPAGE}
echo "      <TH>Nr of HDD Disks</TH>" >> ${DPAGE}
echo "      <TH>Date of processing</TH>" >> ${DPAGE}
echo "    </TR>" >> ${DPAGE}
echo "  </TABLE>" >> ${DPAGE}
HTML_FOOTER ${DPAGE}


# -------------------------------------------------
# EXTRA (at page)
echo "<HR>" >> ${PAGE}
echo "<TABLE BORDER=1 cellspacing='0' ID='buttons'>" >> ${PAGE}
echo "  <TR>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='3'> EXTRA: </FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='3'> <A HREF=\"http://nlxnetapp01.bcklan.ao-srv.com/download/decarbon/\" target=_blank target=_blank >Download</A> </FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='3'> <A HREF=\"http://nlxnetapp01.bcklan.ao-srv.com/wiki/doku.php?id=decarbonization\" target=_blank target=_blank >Wiki</A> </FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='3'> <A HREF=inputdir.html>inputdir</A> </FONT> </TD>" >> ${PAGE}

#echo "    <TD><FONT COLOR=black face='verdana' size='3'> <A HREF=\"https://nlxnetapp02.bcklan.ao-srv.com:3443/d/sPcDl22Mz/storage-decarbonize?orgId=4\" target=_blank >Grafana(ext)</A> </FONT> </TD>" >> ${PAGE}

if [ -f ${PAGEDIR}/Explanation.html ]; then
  echo "    <TD><FONT COLOR=black face='verdana' size='3'> <A HREF=Explanation.html>Explanation</A> </FONT> </TD>" >> ${PAGE}
fi

if [ -f ${PAGEDIR}/log-page.html ]; then
  echo "    <TD><FONT COLOR=black face='verdana' size='3'> <A HREF=log-page.html>Part of LOG</A> </FONT> </TD>" >> ${PAGE}
fi

if [ -f ${PAGEDIR}/data-disks-page.html ]; then
  echo "    <TD><FONT COLOR=black face='verdana' size='3'> <A HREF=data-disks-page.html>DISKS.csv</A> </FONT> </TD>" >> ${PAGE}
fi

echo "  </TR>" >> ${PAGE}
echo "</TABLE>" >> ${PAGE}





# LEGENDA
echo "<HR>" >> ${PAGE}
echo "<TABLE BORDER=0 WIDTH='1%' ID='legenda'>" >> ${PAGE}
echo "  <TR>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='3'><B><U>LEGENDA:</U></B></FONT> </TD>" >> ${PAGE}
#echo "    <TD></TD>" >> ${PAGE}
#echo "    <TD></TD>" >> ${PAGE}
echo "  </TR>" >> ${PAGE}

echo "  <TR>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><U>Environment:</U></FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>7m</B> = NetApp-OnTap-7mode</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>dpa</B> = Dell/EMC-DPA</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>dd</B> = Dell/EMC-DataDomain (without DPA)</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>isol</B> = Dell/EMC-Isilon</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>ot</B> = NetApp-OnTap</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>uni</B> = Dell/EMC-Unity</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>vmax</B> = Dell/EMC-VMAX</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>vnx</B> = Dell/EMC-VNX</FONT> </TD>" >> ${PAGE}
echo "  </TR>" >> ${PAGE}

echo "  <TR>" >> ${PAGE}
#echo "    <TD width=1%><FONT COLOR=black face='verdana' size='2'>E = <IMG SRC=EMC2.jpg width=50%> </FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><U>Vendor:</U></FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>E</B> = Dell/EMC </FONT> </TD>" >> ${PAGE}
#echo "    <TD width=1%><FONT COLOR=black face='verdana' size='2'>H = <IMG SRC=HDS.png width=50%> </FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>H</B> = Hitachi/Vantara (HDS) </FONT> </TD>" >> ${PAGE}
#echo "    <TD width=1%><FONT COLOR=black face='verdana' size='2'>N = <IMG SRC=NetApp.jpg width=50%> </FONT> </TD>" >> ${PAGE}
echo "    <TD width=1%><FONT COLOR=black face='verdana' size='2'><B>N</B> = NetApp </FONT> </TD>" >> ${PAGE}
echo "  </TR>" >> ${PAGE}
echo "  <TR>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><U>Number of disks:</U></FONT> </TD>" >> ${PAGE}
echo "    <TD BGCOLOR=green><FONT COLOR=black face='verdana' size='2'>SSD</FONT> </TD>" >> ${PAGE}
echo "    <TD BGCOLOR=orange><FONT COLOR=black face='verdana' size='2'>HDD</FONT> </TD>" >> ${PAGE}
#echo "    <TD BGCOLOR=red><FONT COLOR=black face='verdana' size='2'>Legacy(N:7mode) <B>TiB</FONT> </TD>" >> ${PAGE}
#echo "    <TD><FONT COLOR=black face='verdana' size='2'>Number of disks between () </FONT> </TD>" >> ${PAGE}
echo "  </TR>" >> ${PAGE}

echo "  <TR>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'><B>Last upload</B></FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'>Date</FONT> </TD>" >> ${PAGE}
echo "    <TD><FONT COLOR=black face='verdana' size='2'>: ServerName </FONT> </TD>" >> ${PAGE}
echo "  </TR>" >> ${PAGE}

if [ "${AVG_PWR_SSD_MW}" != "" ] && [ "${AVG_PWR_HDD_MW}" != "" ]; then
  echo "  <TR>" >> ${PAGE}
  echo "    <TD><FONT COLOR=black face='verdana' size='2'>Avg pwr consumption /disk </FONT> </TD>" >> ${PAGE}
  echo "    <TD BGCOLOR=green><FONT COLOR=black face='verdana' size='2'><B> ${AVG_PWR_SSD_MW}mW </B> </FONT> </TD>" >> ${PAGE}
  echo "    <TD BGCOLOR=orange><FONT COLOR=black face='verdana' size='2'><B> ${AVG_PWR_HDD_MW}mW </B> </FONT> </TD>" >> ${PAGE}
#AVG_PWR_SSD_MW="60"
#AVG_PWR_HDD_MW="9100" 
  echo "  </TR>" >> ${PAGE}
fi  # [ ...

echo "</TABLE>" >> ${PAGE}

HTML_FOOTER ${PAGE}

# INPUTdir-overview
IPAGE="${PAGEDIR}/inputdir.html"
HTML_TOP ${IPAGE}
echo "  <TABLE border=1 cellspacing='0' ID='inputdir'>" >> ${IPAGE}
echo "    <TR>" >> ${IPAGE}
echo "      <TH> FILENAME in input-dir: </TD>" >> ${IPAGE}
echo "    </TR>" >> ${IPAGE}
ls -1tr ${INDIR}|while read LINE
do
  echo "    <TR>" >> ${IPAGE}
  echo "      <TD> ${LINE} </TD>" >> ${IPAGE}
  echo "    </TR>" >> ${IPAGE}
done  # ls -1
echo "  </TABLE>" >> ${IPAGE}
HTML_FOOTER ${IPAGE}

if [ "${HTMLMAILTO}" != "" ]; then
  cat ${PAGE}|mailx -s "html:decarbon.html" ${HTMLMAILTO}
  cat ${IPAGE}|mailx -s "html:inputdir.html" ${HTMLMAILTO}
  cat ${LPAGE}|mailx -s "html:log-page.html" ${HTMLMAILTO}
  cat ${DPAGE}|mailx -s "html:data-disks-page.html" ${HTMLMAILTO}
  echo "  Mailed HTML-pages to ${HTMLMAILTO}"|tee -a ${LOG}
fi  # HTMLMAILTO

rm ${TMP} ${TMP}.red-env-cnt
echo "`date` ${PGM} ${VER} finished."|tee -a ${LOG}
exit 0

