运行某个shell的时候检测这个shell当前是否运行,如果正在运行,退出,否则,开始运行。
#!/bin/bash
cd /a/b/c/bin
Channel=$1
BatchSize=80000
export HOMEDIR=/a/b/c
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$HOMEDIR/lib/mysql.jar
export JAVA_HOME=/usr/lib/jvm/java-1.6.0
export JAVA_CMD=$JAVA_HOME/bin/java
export LOGDIR=/a/b/logs/
export LOGFILE=$LOGDIR/Process-`date +"%Y%m%d"`.log
mkdir -p $LOGDIR
export JAVA_MAIN=com.test.Test
EXEC_CMD="$JAVA_CMD -Xmx6000m -classpath $CLASSPATH $JAVA_MAIN $Channel"
ps -ef | grep "$EXEC_CMD" > Status_$Channel
num=$(wc -l Status_$Channel | awk '{print $1}')
if [ $num -gt 1 ]
then
echo "process is running..." >> $LOGFILE
exit 1
else
echo "Start to process For "$Channel" at:"`date +%Y-%m-%d-%H:%M:%S` >> $LOGFILE 
$EXEC_CMD $BatchSize >> $LOGFILE 
echo "End to process For "$Channel" at:"`date +%Y-%m-%d-%H:%M:%S` >> $LOGFILE
fi
note:jar包的main函数可以接受两个参数,一个是Channel,另一个是BatchSize.

Linux中,shell脚本调用java程序模板相关推荐

  1. shell脚本触发java程序支持传参补跑_01

    文章目录 一.java程序 1. 创建java项目 2. 创建包结构 3. 创建java类 4. 编译 5. 编译后的包结构总览 二.shell脚本 2.1. 创建基础目录 2.2. 上传项目到指定目 ...

  2. Linux中crontab无法执行java程序的问题

    Linux中crontab无法执行java程序的问题 jdk环境变量配置问题:可以用全路径来解决: 竟然是kill -9之后,后面的脚本都不运行,这个还没有找到原因啊: 即便是系统级别的 ls 命令, ...

  3. shell脚本触发java程序支持传参补跑 +crontab定时器+每天生成日期文件_03

    文章目录 1. 脚本升级 2. 执行测试 3. 脚本关键词简述 补充案例 上一篇: shell脚本触发java程序支持传参补跑 +crontab定时器_02 https://gblfy.blog.cs ...

  4. linux存放脚本目录,linux中Shell脚本所在目录的绝对路径linux操作系统 -电脑资料...

    linux shell 脚本里面如果想得到当前脚本文件存放的绝对路径,也没有太现成的命令可以调用,不过可以通过下面的语句来获取:代码如下复制代码 baseDirForScriptSelf=$(cd & ...

  5. shell脚本触发java程序支持传参补跑 +crontab定时器_02

    文章目录 1. 创建定时任务 2. 查看定时任务是否执行 上一篇: shell脚本触发java程序支持传参补跑_01 https://gblfy.blog.csdn.net/article/detai ...

  6. Linux中 shell 脚本获取当前工作目录的方法

    Linux中 shell 脚本获取当前工作目录的方法 1. 示例 2. 注意: 参考: 1. 示例 test.sh target_dir=$(cd $(dirname $0); pwd) echo $ ...

  7. linux脚本 程序输入,[转]Linux中shell脚本如何自动输入…

    shell脚本在处理自动循环或大的任务方面可节省大量的时间,通过创建一个处理任务的命令清单,使用变量.条件.算术和循环等方法快速创建脚本以完成相应工作,这比在命令行下一个个敲入命令要省时省力得多. 但 ...

  8. Linux之shell脚本实现java服务的一键启动、停止、重启及每个服务单独的重启

    shell脚本提供了一键启动.停止.重启及每个服务单独的重启的函数. 脚本实现了: 调用sh文件根据不同的入参调用不同的函数 创建文件夹 创建文件 自定义函数调用自定义函数(调用函数时传入参数) 调用 ...

  9. Linux中Shell脚本编程

    一.shell定义与执行 shell既是一种应用程序,又是一种程序设计语言 shell是用户和Linux内核之间的接口程序 >作为应用程序: 交互式地解释.执行用户输入的命令,将用 户的操作翻译 ...

最新文章

  1. CPU深夜狂飙,一帮大佬都傻眼了...
  2. mysql按章_mysql按时间范围分区
  3. Spring Bean的作用域及生命周期
  4. Boost:Boost概念的function_requires()的测试程序
  5. 微信企业号开发之正式版的本地调试
  6. P2415 集合求和(python3实现)
  7. radiobutton 设置单选项目标
  8. paper 22:kl-divergence(KL散度)实现代码
  9. (70)FPGA模块调用(system Verilog调用system Verilog)
  10. Servlet向JSP传递数据以及JSP页面DIV定时局部刷新
  11. vue双向数据绑定的简单实现
  12. 软件供应链安全现状分析与对策建议
  13. 如何在html中制作播放按钮,HTML5+CSS3网页实例:制作网页播放器按钮
  14. 搭建jitsi的prosody出现的问题
  15. k8s集群ip地址变更后设置
  16. 面试后说hold什么意思_面试结束后就傻傻等通知?你还可以做这三件事!
  17. 阿里达摩院发布并开源“通义”大模型,AI底座之上促场景创新
  18. 卡巴斯基更新新方法(不需要代理服务器)
  19. C-V2X(五)网络层技术要求
  20. vue使用svg画拓扑图(关系图) 拖拽 缩放

热门文章

  1. 利用Node.js为Node.js生成HttpStatusCode辅助类并发布到npm
  2. shell 脚本基础
  3. [20170612]FOR ALL COLUMNS SIZE repeat(11g).txt
  4. 用sql的select语句从数据库中获取数据
  5. linux 开机启动项管理
  6. RecyclerView (一) 基础知识
  7. 修改linux系统时间的方法(date命令)
  8. 在线编辑ewebeditor
  9. Node.js 沙箱易受原型污染攻击
  10. 施耐德电气的 Modicon PLC 中被曝严重漏洞,已有缓解措施