如何用脚本启动工程(工程包含配置文件夹,lib文件夹,源码等)

    xiaoxiao2021-03-25  96

    一、脚本 例1:logAna.sh ------------------------------------------------------------------------------------------------------------------------------------------------ #!/bin/bash HAS_HOME=/opt/app/LogAnaDetail/  export HAS_HOME PATH=/usr/java/jdk1.6.0_37/bin:$PATH export PATH DATE=$(date +%Y%m%d) OUTFILE=$DATE"detail".out LIB_DIR=$HAS_HOME/lib CLASSPATH=$HAS_HOME/conf CLASSPATH=$CLASSPATH:$HAS_HOME/classes HAS_DEPEND_LIB_DIR=$HAS_HOME/lib for F in ` find $LIB_DIR -name *.jar ` do   CLASSPATH=$CLASSPATH:$F done export CLASSPATH

    nohup java -Xms512m -Xmx512m com.test.LogAnaDetail > $HAS_HOME/bin/$OUTFILE 2>&1 &

    ------------------------------------------------------------------------------------------------------------------------------------------------

    nohup :将输出的日志打到当前路径下nohup.out下

    java ...& : 关闭窗口断开连接后仍执行

    2>&1 :将错误输出日志与标准输出合并,都打到标准输出的日志中

    java -Xms512m -Xmx512m  :最小执行内存与最大执行内存

    nohup java ...  > filename.txt  重定向nohup 日志到filename.txt 中

    =======================================================================

    例2:testtool.sh

    ----------------------------------------------------------------------------------------------------------------------

    #set -x CONFIG_FILE=$1 ROOT_DIR=/opt/app/TestTool LIB_PATH=${ROOT_DIR}/lib #APP=${ROOT_DIR}/app/tool-latest.jar APP=${ROOT_DIR}/app/testtool1.jar javaclasspath="" get_javaclasspath() {          for f in `ls ${LIB_PATH}`     do if [ "f" = "." -o "f" = ".." ]; then   continue;         fi         if [ -d "${LIB_PATH}/${f}" ]; then            get_javaclasspath "${LIB_PATH}/${f}"             else              javaclasspath=${javaclasspath}":"${LIB_PATH}/${f}         fi     done } get_javaclasspath ${LIB_PATH} echo "$*" cd $ROOT_DIR java -Dfile.encoding=UTF-8 -cp $javaclasspath:${APP} com.test.exec.TestTool $*

    ----------------------------------------------------------------------------------------------------------------------

    二、启动方法

      例1 .在脚本(logAna.sh)所在目录,执行 :logAna.sh即可

      例2. nohup  bash **.sh &

    三、知识点

    1. 重定向输出

    >file1.txt 与 >>file1.txt

    > file1.txt : 如果文件存在,则清空文件,然后输出到此文件,不存在则新建文件

    >>file1.txt: 如果文件存在,则再其后追加内容,不存在则新建文件

    扩展:直接 >file1.txt ,'>'左边什么都没有,代表清空但是不删除日志

    转载请注明原文地址: https://ju.6miu.com/read-10817.html

    最新回复(0)