#!/bin/bash

### 切换到工作目录
bin=$(cd `dirname ${0}`;pwd)
cd ${bin}
echo "bin [${bin}] .." ### 参数设置
process="RCrNew"
LOGPATH="/web/logs"
day=$(date +%Y%m%d)
#instance=$(echo ${bin}|awk -F'/' '{print $NF}') ### 如果程序已存在,先退出再执行
#if [ $(ps -ef|grep -v grep|grep ${process}|grep ${instance}|grep -Ewv "less|tail|tailf"|wc -l) -ne 0 ]
if [ $(ps -ef|grep -v grep|grep ${process}|grep -Ewv "less|tail|tailf"|wc -l) -ne 0 ]
then
ps -ef|grep -v grep|grep ${process}|grep -Ewv "less|tail|tailf"
echo "${process} instance: ${instance} is exists,Please kill it and run agin"
exit
fi ### JAVA相关参数设置
MAINCLASS="com.yyyy.app.RCNew"
JAVA="$JAVA_HOME/bin/java"
JAVA_OPTS="-server -Xms1024m -Xmx1024m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:MaxPermSize=128m "
JARS1=`find -L "${bin}/dependency" -name "*.jar" -printf '%p:'`
JARS2=$(ls -rt *jar|tail -1)
JARS=${JARS1}${JARS2}
echo -e "JARS2: [ ${JARS2} ]\nmainClass: [ ${MAINCLASS} ]"
# echo -e "JARS1: [ ${JARS1} ]\nJARS2: [ ${JARS2} ]\nmainClass: [ ${MAINCLASS} ]"
# echo -e "JARS: [ ${JARS} ]" ### 执行程序
nohup ${JAVA} ${JAVA_OPTS} -cp ${JARS} ${MAINCLASS} 1>/dev/null 2>&1 &
if [ $? -eq 0 ]
then
echo "${process} run successful"
else
echo "${process} run fail"
fi
 #!/bin/bash

 LIB=$(dirname ${})
echo "LIB [${LIB}] .." JARS=`find -L "${LIB}" -name '*.jar' -printf '%p:'`
echo "JARS [${JARS}] .." $JAVA_HOME/bin/java -cp ${JARS} com.lxw1234.hive.orc.TestORCWriter $*
#!/bin/bash
VERSION=$
MAINCLASS=$
LIB=$(cd `dirname ${}`;pwd)
cd ${LIB}
echo "LIB [${LIB}] .." JARS1=`find -L "${LIB}/dependency" -name "*.jar" -printf '%p:'`
JARS2=${JARS}`find -L "${LIB}" -maxdepth -name "*${VERSION}*.jar"`
JARS=${JARS1}${JAR2}
echo -e "JARS1: [ ${JARS1} ]\nJARS2: [ ${JARS2} ]\nmainClass: [ ${MAINCLASS} ]" $JAVA_HOME/bin/java -cp ${JARS} ${MAINCLASS} $*

shell脚本启动java程序的更多相关文章

  1. IDEA部署项目,并结合Shell脚本运行Java程序

    一.概述 在实际开发中,我们写好的代码,往往打成war包或jar包,通过winscp或其他软件将其上传至服务器,然而这样非常大的一个弊端就是不利于开发,为什么这么说呢?假如我们刚刚将springboo ...

  2. shell脚本运行java程序jar

    在UBuntu上部署项目的时候,我们往往通过一段shell来启动程序,甚至是通过crontab定时任务来定时的调用java程序,但是很奇怪的一个问题就是,比如我写了一个如下的shell脚本: #!/b ...

  3. 利用脚本启动java程序

    今天在工作中,需要写一个shell脚本,启动一个socket程序,从而模拟短信网关.查了一些资料,终于搞定了,现在记录一下,方便大家查阅. 为了说明使用方法,我们就用最简单的程序来实现,比如我们要运行 ...

  4. 编写通用shell脚本启动java项目,适用于多数服务,只需修改服务名即可

    文件名:service-user.sh 文件内容: ##shell脚本的头文件必须有#!/bin/sh ##再次配置java环境变量以防报其他错误## java env#jdk安装目录export J ...

  5. 使用nohup命令编写shell脚本启动java应用,并使用外挂配置文件

    nohup nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令.该命令可以在你退出帐户/关闭终端之后继续运行相应的进程. 在缺省情况下该作业的所 ...

  6. 使用shell/bat脚本调试java程序示例

    一.linux下shell启动java #!/bin/sh JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre # JVM_OPT ...

  7. 【linux】Shell脚本启动程序

    Linux 下后台脚本启动Jar程序 Nohup后台输出运行日志 cd /home/zeze/jar/WeiboPost java -jar WeiboAutoPost.jar ../configur ...

  8. linux shell脚本调用java main方法 代码

    #!/bin/sh # #该脚本为Linux下启动java程序的通用脚本.即可以作为开机自启动service脚本被调用, #也可以作为启动java程序的独立脚本来使用. # #Author: tuda ...

  9. Linux上设置开机启动Java程序

    在Linux上设置开机启动Java程序,例如:test.jar 在Linux上启动Java程序的命令: nohup java -jar test.jar >/dev/>& & ...

随机推荐

  1. Eclipse安装Web/JavaEE插件、Eclipse编写HTML代码

    1 Eclipse没有Web插件和JavaEE插件咋整 1.1 在Eclipse中菜单help选项中选择install new software选项 1.2 在work with 栏中输入 http: ...

  2. 业务逻辑:五、完成认证用户的动态授权功能 六、完成Shiro整合Ehcache缓存权限数据

    一. 完成认证用户的动态授权功能 提示:根据当前认证用户查询数据库,获取其对应的权限,为其授权 操作步骤: 在realm的授权方法中通过使用principals对象获取到当前登录用户 创建一个授权信息 ...

  3. ZXing开发详解

    博客转载自:https://blog.csdn.net/skillcollege/article/details/38852183 什么是Z*? 在Android平台做过二维码相关模块的肯定都熟知ZX ...

  4. ARC059F

    传送门 分析 见ptx大爷博客 代码 #include<iostream> #include<cstdio> #include<cstring> #include& ...

  5. Help Bubu UVALive - 4490

    传送门 题目大意 有n本书,最多k次操作,每次操作可以把一本书拿出来,放到一个位置去,有一个指标较mess度,他是书的高度的段数,连续的书高度一样算一段,现在给你最先开始各个位置上的书的高度,求操作后 ...

  6. 【zookeeper】

    window下安装zookeeper三结点集群: 1:解压缩zookeeper压缩包:复制三分并且命名成:Server_A   Server_B  Server_C 2:拷贝conf目录下的文件zoo ...

  7. Data Base 常用数据库参数的前缀表示符合

    可能参数化SQL语句不同,例如在Access中参数化SQL语句是在参数直接以“?”作为参数名,在SQL Server中是参数有“@”前缀,在MySQL中是参数有“?”前缀,在Oracle中参数以“:” ...

  8. Wet Shark and Bishops(思维)

    Today, Wet Shark is given n bishops on a 1000 by 1000 grid. Both rows and columns of the grid are nu ...

  9. Unity UGUI 原理篇(二):Canvas Scaler 縮放核心

    https://blog.csdn.net/gz_huangzl/article/details/52484611 Canvas Scaler Canvas Scaler是Unity UI系統中,控制 ...

  10. Python函数的冒泡排序、递归以及装饰器

    函数的冒泡排序: 本质是,让元素换位置,逐个比较最终排序. 例1:实现a1,a2值互换: a1 = 123 a2 = 456 temp = a1 a1 = a2 a2 = temp print(a1) ...