命令行运行java程序,将控制台日志保存到指定文件

有个程序。命令行启动命令为

java -verbose sample.DesktopApp
在控制台看到打印日志。

将日志按照日期保存到指定文件中,以备查验。关键点在于 2>&1 ,把控制台异常重定向到标准输出中。完整批处理如下:

#!/bin/bash

LOG_PATH="../log"$(date +"%Y%m%d%H%M")".txt"
cd desktop
touch ${LOG_PATH}
nohup $(java -verbose sample.DesktopApp    >>  ${LOG_PATH} 2>&1) &
tail -f ${LOG_PATH}

编译的程序引入第三方类,不知道怎么打包。先用命令行把每个类包解压成 .class文件,然后统一拷贝到指定文件夹下,将这个文件夹做为发布包给测试用。后期发布还是要打包成 jar包发布。解压第三方jar包的关键程序:

find ./ -maxdepth 1 -name "*.jar" | xargs -I FL jar -xvf FL
完整批处理如下:

#!/bin/bash

# 环境变量
. ./env.sh

# version name.
VERSION=${PRODUCT_VERSION}
ROOT_PATH=$(pwd)
DST_PATH="../release/cike_desktop/desktop/"
NOW=$(date +"%Y%m%d%H%M")

if [ ! -d ${DST_PATH} ]
then
    mkdir -p ${DST_PATH}
fi

rsync -az  desktop_startup.bat  $(dirname ${DST_PATH})
rsync -az  desktop_startup.sh  $(dirname ${DST_PATH})


LIBS=( "./core/libs/" \
        "./desktop/libs/")

for LIB in ${LIBS[*]}
do
    rsync -az ${LIB} ${DST_PATH}
done

cd ${DST_PATH}
find ./ -maxdepth 1 -name "*.jar" | xargs -I FL jar -xvf FL
cd ${ROOT_PATH}



SRC_LIST=(  "./out/production/core/" \
            "./out/production/desktop/" \
            "./out/production/df_lib_x/" \
            "./android/assets/" \
            )



for SRC in ${SRC_LIST[*]}
do
    rsync -az ${SRC}  ${DST_PATH}  --progress
done



#if [ "rebuild" == ${1} ]
#then
#    rm -rf ../cike_desktop.zip
ZIP_NAME="cike_desktop_"$VERSION"_"${NOW}.zip
ZIP_PATH="../release/"$ZIP_NAME
zip -r $ZIP_PATH "../release/cike_desktop"

# password: woshixxrl
rsync -az         \
    $ZIP_PATH     \
    dy@dypi:/mnt/d/shared/release/cike/$ZIP_NAME    \
    --progress

#fi



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值