标签:com $0 命令 env res pre targe 文件 serve
#!/bin/bash
THIS_DIR=`cd $(dirname "$0") && pwd -LP`$0
类似于python中的sys.argv[0]等。$0
指的是Shell本身的文件名。类似的有如果运行脚本的时候带参数,那么$1
就是第一个参数,依此类推。dirname
用于取指定路径所在的目录 ,如 dirname /home/ikidou 结果为 /home。$
返回该命令的结果pwd -P
如果目录是链接时,格式:pwd -P 显示出实际路径,而非使用连接(link)路径。
ENV=$1
SRC_ROOT_DIR=$THIS_DIR
PACKAGE_NAME=‘sign-api-v2-server.war‘
DST_ROOT_DIR=$THIS_DIR
DST_DIR_NAME=‘output‘;
src_dir="${SRC_ROOT_DIR}"
src_package_file="$src_dir/target/$PACKAGE_NAME"
if [ -f $src_package_file ]; then
rm -rf $src_package_file
fi
cd $src_dir
git status
git pull
if [ ""x != "${ENV}"x ]; then
cp "${src_dir}/src/main/resources/conf/common.${ENV}.properties" "${src_dir}/src/main/resources/conf/common.properties"
fi
cd $src_dir
mvn -Dmaven.test.skip=true clean package
if [ -f $src_package_file ]; then
echo "mvn package SUCCESS!"
else
echo "RUN: mvn -Dmaven.test.skip=true clean package WRONG!"
exit
fi
dst_dir="${DST_ROOT_DIR}/${DST_DIR_NAME}"
dst_package_file="${dst_dir}/${PACKAGE_NAME}"
if [ ! -d "$dst_dir" ]; then
mkdir "$dst_dir"
fi
if [ -d $dst_dir ]; then
cp $src_package_file $dst_package_file
fi
标签:com $0 命令 env res pre targe 文件 serve
原文地址:https://www.cnblogs.com/minikobe/p/9642356.html