shell 防止脚本重复运行

简介: shell 防止脚本重复运行

第一个

processName="test4.sh"
processNum=`ps -aef |grep "${processName}" | grep -v grep | wc -l`
if [ "${processNum}" -gt "2" ]; then
  echo "已经有脚本在运行,本脚本不支持多实例运行${processNum}"
  exit 1
fi

第二个

#!/bin/ksh
RUNDIR=`dirname $0`
PIDFILE="${RUNDIR}/$0.pid"
if [ -s ${PIDFILE} ]; then
  echo "脚本已经在运行,不重复运行,退出."
  exit 1
fi
echo $$ > ${PIDFILE}
<各种业务处理逻辑>
cat /dev/null > ${PIDFILE}

第三个

#!/bin/ksh
RUNDIR=`dirname $0`
PIDFILE="${RUNDIR}/$0.pid"
if [ -s ${PIDFILE} ]; then
   SPID=`cat ${PIDFILE}`
   if [ -e /proc/${SPID}/status ]; then
      echo "脚本已经在运行,不重复运行,退出."
      exit 1
  fi
  cat /dev/null > ${PIDFILE}
fi
echo $$ > ${PIDFILE}
#各种业务逻辑
cat /dev/null > ${PIDFILE}
相关文章
|
3天前
|
人工智能 监控 Shell
常用的 55 个 Linux Shell 脚本(包括基础案例、文件操作、实用工具、图形化、sed、gawk)
这篇文章提供了55个常用的Linux Shell脚本实例,涵盖基础案例、文件操作、实用工具、图形化界面及sed、gawk的使用。
14 2
|
24天前
|
Shell
Shell脚本有哪些基本语法?
【9月更文挑战第4天】
41 17
|
24天前
|
存储 Unix Shell
shell脚本编程基础
【9月更文挑战第4天】
35 12
|
22天前
|
网络协议 关系型数据库 MySQL
Shell 脚本案例
Shell 脚本案例
34 8
|
23天前
|
Shell Linux 开发工具
linux shell 脚本调试技巧
【9月更文挑战第3天】在Linux中调试shell脚本可采用多种技巧:使用`-x`选项显示每行命令及变量扩展情况;通过`read`或`trap`设置断点;利用`echo`检查变量值,`set`显示所有变量;检查退出状态码 `$?` 进行错误处理;使用`bashdb`等调试工具实现更复杂调试功能。
|
9天前
|
安全 Shell Linux
从命令行界面运行交互式PHP Shell
从命令行界面运行交互式PHP Shell
|
28天前
|
运维 监控 Shell
自动化运维之宝:编写高效的Shell脚本
【8月更文挑战第31天】在运维的世界里,Shell脚本是一把瑞士军刀,它让日常任务变得简单而高效。本文将通过浅显易懂的语言和实际案例,带你领略Shell脚本的魅力,并教你如何打造属于自己的自动化工具箱。无论你是初学者还是资深运维,这篇文章都将为你打开一扇窗,让你看到不一样的风景。让我们一起探索Shell脚本的世界吧!
|
1月前
|
存储 Shell 数据安全/隐私保护
minio一键安装脚本分享(shell和python)
minio一键安装脚本分享(shell和python)
43 0
|
1月前
|
关系型数据库 Shell 数据库
postgres14一键安装脚本分享(shell和python)
postgres14一键安装脚本分享(shell和python)
27 0
|
1月前
|
监控 Shell Linux
在Linux中,如何使用shell脚本检测磁盘使用率?
在Linux中,如何使用shell脚本检测磁盘使用率?