因为在实际生产环境中tomcat的在服务器上会有很多应用或者是在服务器上有多个tomcat,所以因为平时大批量的备份就写了一个tomcat的版本备份脚本用于每次版本迭代之前的备份,实现比较简单:

#!/bin/bash
#writer jim
#For tomcat version backup
tomcat_dir="/app/tomcat/tomcat-01"
dis_bakdir="$tomcat_dir/webapps"
dis_dir="$(basename $(find $dis_bakdir -maxdepth 1 -type d -print|grep -v "$dis_bakdir$"))"
#在此要注意用grep筛选目录本身
datetime=$(date +"%Y%m%d%H%M")

if [ ! -e "$tomcat_dir/bak" ];then
        mkdir -p $tomcat_dir/bak
fi

(cd $dis_bakdir;tar -cjf ${dis_dir}_${datetime}.tar.bz2 ${dis_dir}/*) && mv ${dis_bakdir}/*.tar.bz2 ${tomcat_dir}/bak

当然在此条件上修改下还可以用于其他的一些相应备份