OS/Linux

[Shel Script] Version Info File with table

아르비스 2016. 7. 1. 15:52

표로 버전 정보를 표시하도록 하는 shell 스크립트다.


# vi makeVersion.sh

#!/bin/sh


fileName=index.html

#PWD=${readlink -f .}

defaultBranch="CWE_RC_1.6"

PWD=/home/jenkins/version

src_dir=${PWD}/project

current_time=$(date "+%Y%m%d-%H%M%S")

title="This is Current Version Infomation for STG Server!! <FONT color=\"ff0000\">[$current_time]</FONT>"

DIRS=`ls -l ${src_dir} | egrep '^d' | awk '{print $8}'`


echo "Start to make version.html file"


# for HTML

echo "<!DOCTYPE html>" > ${fileName}

echo "<html>" >> ${fileName}

echo "<head>" >> ${fileName}

echo "<meta charset=\"utf8\">" >> ${fileName}

echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">" >> ${fileName}

echo "<title>Current Version Info for STG Server</title>" >> ${fileName}

echo "<link rel=\"stylesheet\" href=\"css/bootstrap.min.css\">" >> ${fileName}

echo "</head>" >> ${fileName}

echo "<body>" >> ${fileName}

echo "<p><H5>$title</H5><p><p>" >> ${fileName}


# display Directory version Files

for DIR in $DIRS

do

  echo "<p> <H4><FONT color=\"blue\">[ ${DIR} ] </FONT></H4>" >> ${fileName}

#  echo "<pre>" >> ${fileName}


  echo "<TABLE border=\"2\">" >> ${fileName}

  while read line

  do

    IFS='=' eval 'array=($line)'

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


    if [ ${array[0]} == "Build Version Infomation" ]

      then echo "<TD colspan=\"2\"> ${array[0]} </TD>" >> ${fileName}

      elif [ ${array[0]} == "branch" ] && [ ${array[1]} != $defaultBranch ]

        then

          echo "<TD> ${array[0]} </TD>" >> ${fileName}

          echo "<TD bgcolor=\"#FFCC99\"> ${array[1]} </TD>" >> ${fileName}

      elif [ ${array[0]} != "project" ]

        then

          echo "<TD> ${array[0]} </TD>" >> ${fileName}

          echo "<TD> ${array[1]} </TD>" >> ${fileName}

    fi


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

  done < ${src_dir}/${DIR}/version.dat


#  echo "</pre>" >> ${fileName}

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


  echo "<p>" >> ${fileName}

  echo "<hr>" >> ${fileName}

done


# html END

echo "</body>" >> ${fileName}

echo "</html>" >> ${fileName}


echo "Finished to make version.html file!!"



웹 능력이 부족하여, html로만 작성한다.. 푸하하히