【脚本安装tomcat和jdk】

#!/bin/bash
# Author                : 19044168
# Date                  : 2022/08/15
# Func                  : 安装tomcat和jdk
#                         例如:sh tomcat_install.sh /opt
##############################################################################

usage="Usage: tomcat_install.sh tomcatPath"
# 检查传参个数
if [ $# -eq 1 ];then
    echo "# 脚本传入参数tomcat安装目录: "$1
else
   echo "ERROR: 传入参数个数不符合预期,请输入tomcat安装目录"
   echo $usage
   exit
fi

#tomcat安装目录
tomcatPath=$1
#Set PWD当前脚本所在目录
PWDDIR=`pwd`
#tomcat安装包
fileTomcat=$(ls ${PWDDIR} | grep 'apache-tomcat*')
#jdk1安装包
filejdkjar=$(ls $PWDDIR | grep 'jdk.*gz')

#创建tomcat安装目录
create_tomcatdir()
{
       if [ ! -d ${tomcatPath} ];then
            #创建tomcat安装目录
         mkdir -p ${tomcatPath}
      else
         echo "${tomcatPath}目录存在,不需要创建"
       fi
}
Check_error()
{
       if [ $? -eq 0 ];then
               echo "SUCCESS"
       else
               echo "FAIL" >>$PWDDIR/create_tomcat.log
       fi
}

#创建tomcatuser用户
create_user()
{
       if id -u tomcatuser >/dev/null 2>&1;then
            echo "user tomcatuser exists"
       else
            #创建tomcat用户和组
         groupadd tomcatuser;
         useradd -g tomcatuser tomcatuser;
       fi
      su - tomcatuser -c "mkdir software"
}

#安装tomcat并软连到tomcatuser下
install_tomcat()
{
    if [  -d /home/tomcatuser/software/tomcat ]
    then
      #如果java目录存在,就删除java目录
        rm -rf /home/tomcatuser/software/tomcat
    fi 
   #输入tomcat压缩文件
   if [ -f ${fileTomcat} ]
   then
      echo "正在创建tomcat解压后使用的目录";
      create_tomcatdir
      Check_error
      #解压tomcat
      tar -zxvf ${fileTomcat} -C ${tomcatPath};
      echo "tomcat解压完成";
   else
      echo "请输入正确的文件";
      exit 1
   fi
   #给解压后的tomcat赋权,并目录软连到tomcatuser目录下
   tomcatDir=$(ls -d ${tomcatPath}/apache-tomcat*/)
   chown -R tomcatuser:tomcatuser $tomcatDir
   su - tomcatuser -c "ln -snf $tomcatDir  /home/tomcatuser/software/tomcat"
   echo "tomcat安装到tomcatuser完成"
}


#安装jdk
install_jdk()
{
    if [ ! -d /home/tomcatuser/software/java ]
    then
      #如果java目录存在,就删除java目录
        rm -rf /home/tomcatuser/software/java
    fi
   if [ -f "${filejdkjar}" ]; then
          #开始安装jdk1.8
      tar -zxvf ${filejdkjar} -C ${tomcatPath}
   else 
      echo "jdk1安装包不满足是以jdk1.8.开头的.tar.gz包"
      exit 4
   fi
   #获取tomcatPath下的jdk目录
   javaDir=$(ls -d ${tomcatPath}/{*java*/,*jdk*/})
   #给解压后的jdk目录赋权,并目录软连到tomcatuser目录下
   chown -R tomcatuser:tomcatuser ${javaDir};
   #建立jdk的软连
    su - tomcatuser -c "ln -snf $javaDir  /home/tomcatuser/software/java"
   echo "jdk安装到tomcatuser完成"
}


#校验java环境变量是否存在,存在删除
checkExistJava(){
   echo "检查java环境变量配置开始"
   #JAVA_HOME配置
   jdk_javahome=$(grep -n "export JAVA_HOME=.*" /home/tomcatuser/.bashrc | cut -f1 -d':')
   if [ -n "$jdk_javahome" ];then
      echo "JAVA_HOME 已经配置,删除重新配置"
      sed -i "${jdk_javahome}d" /home/tomcatuser/.bashrc
   fi
   #PATH配置
   jdk_path=$(grep -n "export PATH=.*\$JAVA_HOME.*"  /home/tomcatuser/.bashrc | cut -f1 -d':')
   if [ -n "$jdk_path" ];then
      echo "PATH已经配置,删除重新配置"
      sed -i "${jdk_path}d" /home/tomcatuser/.bashrc
   fi
}


#配置tomcatuser用户的环境变量
conf_javahome()
{
   #校验java环境变量是否存在,存在就删除
   checkExistJava
   #修改tomcatuser环境变量,并source        
   sed -i '$a export JAVA_HOME=/home/tomcatuser/software/java' /home/tomcatuser/.bashrc
   sed -i '$a export PATH=$JAVA_HOME/bin/:$PATH' /home/tomcatuser/.bashrc
   source /home/tomcatuser/.bashrc
   #安装完成后检查环境变量
   versionjdk=$(su - tomcatuser -c "java -version 2>&1|grep 'java version'")
   echo $versionjdk
   if [ -n "${versionjdk}" ];then
            echo "已配置好tomcatuser的jdk环境变量"
      else
         echo "重新配置jdk"
         return 1
   fi
}

main()
{
   echo "tomcat安装完成,创建用户"
        create_user  
    echo "开始安装tomcat"
       install_tomcat
   echo "开始安装jdk"  
      install_jdk
   echo "开始配置JAVA_HOME"    
      conf_javahome
}
main;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值