请事先准好软件包:apache-tomcat-8.5.61.tar.gz和jdk-8u271-linux-x64.tar.gz。
#!/bin/sh COLOR="echo -e \E[1;32m" COLOR1="echo -e \E[1;31m" END="\E[0m" jdk_file="jdk-8u271-linux-x64.tar.gz" tomcat_file="apache-tomcat-8.5.61.tar.gz" install_file="/apps" #centos7安装 install_tomcat(){ ${COLOR}"开始安装tomcat..."${END} [ -d $install_file ] || mkdir $install_file #判断jdk源码包是否存在 [ -f "/root/${jdk_file}" ] && tar xf /root/${jdk_file} -C ${install_file} || { ${COLOR1}"jdk源码包不存在"${END}; exit; } #安装jdk ln -s ${install_file}/jdk1.8.0_271 ${install_file}/jdk cat > /etc/profile.d/jdk.sh <<EOF export JAVA_HOME=${install_file}/jdk export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=$JAVA_HOME/lib/:$JRE_HOME/lib/ export PATH=$PATH:$JAVA_HOME/bin EOF source /etc/profile.d/jdk.sh java -version && ${COLOR}"jdk安装完成!"${END} || ${COLOR1}"jdk安装失败,请检查!"${END} #判断tomcat源码包是否存在 [ -f "/root/${tomcat_file}" ] && tar xf /root/${tomcat_file} -C ${install_file} || { ${COLOR1}"tomcat源码包不存在"${END}; exit; } #安装tomcat ln -s ${install_file}/apache-tomcat-8.5.61 ${install_file}/tomcat echo "PATH=${install_file}/tomcat/bin:"'$PATH' > /etc/profile.d/tomcat.sh source /etc/profile.d/tomcat.sh cat > ${install_file}/tomcat/conf/tomcat.conf <<EOF JAVA_HOME=${install_file}/jdk EOF id tomcat &> /dev/null || useradd -r -s /sbin/nologin tomcat chown -R tomcat.tomcat ${install_file}/tomcat/ cat > /lib/systemd/system/tomcat.service <<EOF [Unit] Description=Tomcat #After=syslog.target network.target remote-fs.target nss-lookup.target After=syslog.target network.target [Service] Type=forking EnvironmentFile=${install_file}/tomcat/conf/tomcat.conf ExecStart=${install_file}/tomcat/bin/startup.sh ExecStop=${install_file}/tomcat/bin/shutdown.sh RestartSec=3 PrivateTmp=true User=tomcat Group=tomcat [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable --now tomcat.service systemctl is-active tomcat.service && ${COLOR}"tomcat安装完成!"${END} || ${COLOR1}"tomcat安装失败,请检查!"${END} } [ -f "/lib/systemd/system/tomcat.service" ] && ${COLOR}"tomcat已安装!"${END} || install_tomcat