`
jacky.jihao
  • 浏览: 152641 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

如何保证sh脚本只有一个进程在运行

    博客分类:
  • unix
阅读更多
#!/usr/bin/sh

LOCKFILE=jihao.lock
if [ -f ${LOCKFILE} ] && kill -0 `cat ${LOCKFILE}`; then
    echo "filecollector is already running"
    exit
fi
 
# make sure the lockfile is removed when we exit and then claim it
trap "rm -f ${LOCKFILE}; exit" INT TERM EXIT
echo $$ > ${LOCKFILE}

 
 
sleep 100
rm -f ${LOCKFILE}
 
BTW: http://stackoverflow.com/ 很好很实用
分享到:
评论

相关推荐

    Shell脚本中获取进程ID的方法

    当我在执行shell脚本时,它会启动一个叫子shell的进程。作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为“批处理进程”)。 在某些情况下,你也许想要知道运行中的子shell的PID。这个PID...

    ubuntu如何运行.sh文件,.sh文件运行提示脚本异常

    ubuntu执行.sh文件,1 .sh文件是Ubuntu下可执行文件,首先需要确定它的权限...注意:不可以用sh filename,因为在Ubuntu下,sh调用的事dash解释器,用./filename默认调用bash解释器,只要在文件开头加上: #!/bin/bash

    linux中巡检进程是否存在的sh脚本语法

    脚本自制,当中包含基础性的语法,可以用于测试linux系统的部分进程、驱动,以及收集后台的必要...可以提供给学习sh脚本编写的新手参考。后台运行该脚本,在/var目录下result打包文件中的result.txt就是你想要的结果。

    linux sh脚本隐藏二进制文件

    # > Author: 后台运行-进程唯一 # > How to use: tar -zcvm SOFT_NAME >> this.sh # > Created Time: 2018年04月15日 星期日 02时00分31秒 #********************************************************************...

    shell脚本实现多进程运行的方法示例

    本文主要跟大家分享了shell脚本实现多进程运行的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍: 例子 for ip in 192.168.56.{1..254} do ( ping $ip -c 4 &>/dev/null; if [ $? -eq 0 ]; then echo...

    server.sh jar包启动、关闭脚本

    spring boot、springcloud项目一般为jar包形式运行,每次启动及关闭输命令很不爽,切且vm调优比较麻烦,编写shell脚本,将JVM调优参数及日常命令进行封装,操作简单,还不易出错,妙哉妙哉,此脚本已在我司正式使用...

    Shell脚本实现监视指定进程的运行状态

    在之前的博客中,曾经写了自动化测试程序的实现方法,现在开发者需要知道被...#取得指定进程名为mainAPP,内存的使用率,进程运行状态,进程名称 eval $(ps | grep mainApp | grep -v grep | awk {'printf(memInfo=%s

    linux上通过sh方式启动java jar程序并做为守护进程

    NULL 博文链接:https://qsfwy.iteye.com/blog/1650426

    linux执行jar文件脚本.sh

    在linux系统中执行jar包,我们需要先杀掉对应端口的进程,然后执行java -jar命令,启动服务

    linux进程监控与自动重启的简单实现方法

    linux 下服务器程序会因为各种原因dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能。 实现原理: 由定时任务crontab调用脚本,脚本用ps检查进程是否存在,如果不存在则重启并写入日志。 crontab...

    【shell脚本】shell脚本之概念、运行方式、变量的使用、交互式脚本、运算(shell脚本基础学习一)

    【shell脚本】shell脚本之概念、运行方式、变量的使用、交互式脚本、运算(shell脚本基础学习一) shell概念 --- 编写执行--- 变量 --- 运算---  shell脚本 /bin/bash 默认解释器 cat /etc/shells 查看所有解释器 ...

    linux 负载查询脚本

    Linux负载查询脚本是用于查看系统负载情况的自动化脚本。系统负载指的是系统中正在运行或等待...可以将以上脚本保存为一个文件(如load_query.sh),并给予执行权限,然后在命令行中运行该脚本即可查询系统的负载情况。

    Linux运行、停止、重启Jar包Bash脚本

    通过 run.sh [ start | stop | restart | pid ] 脚本,执行启动 | 停止 | 重启 | 输出进程号。 注:1.该脚本为Linux Bash脚本。2.替换文件第3行 app_name='xyz.jar' 中 'xyz.jar' 为运行jar包名。3.给该脚本执行...

    Linux操作Jar包Bash脚本

    包括jar包 start.sh(启动)、stop.sh(停止)、restart.sh(重启)、pid.sh(输出进程号)、run.sh(操作) 5个脚本。 注:1.脚本为Linux Bash脚本。2.文件中 'xyz.jar' 修改为运行jar包名。3.给脚本执行权限,例:chmod +x ...

    Shell脚本避免重复执行的方法

    很多用cron定时执行的shell脚本可能会由于各种原因执行很久,会有必要在运行的时候先检查一下自身是否还在运行。本文提供的linux shell脚本用以检查以命令sh …来执行的shell脚本。要对其他东西进行唯一性检查,可以...

    dropbox-shell:一个BASH脚本,用于通过Dropbox在远程计算机上运行脚本程序

    投递箱一个BASH脚本,用于通过Dropbox在远程计算机上运行脚本/程序。 首先,您必须使用以下结构在Dropbox中设置一个文件夹: 投寄箱/远程/ 投寄箱/远程/旧/ 投寄箱/远程/输出/ Dropbox /远程/命令/ 如果需要除...

    Linux使用脚本一键安装PostgreSQL

    4. 监控PostgreSQL进程运行资源占用 5. 重启PostgreSQL 6. 也可以通过"systemctl status/start/stop postgresql"命令查看PostgreSQL的状态/启动/停用 7. 通过命令"sh pgsql.sh uninstall"可以卸载安装的PostgreSQL 8...

    详解linux后台运行和关闭、查看后台任务

    watch -n 10 sh test.sh & #每10s在后台执行一次test.sh脚本 二、ctrl + z 可以将一个正在前台执行的命令放到后台,并且处于暂停状态。 三、jobs 查看当前有多少在后台运行的命令 jobs -l选项可显示所有任务的...

    aggregate-commands:在一个进程中运行一堆命令并将它们分开记录

    在一个进程中运行一堆命令并将它们分开记录。 它实际上是为在使用而开发的,而不是用于command1 & command2 & command 3 。 全球范围 安装 npm install -g aggregate-commands 用法 aggregate-commands /path/to/...

    create-autorun:在QNAP NAS上创建自动运行环境

    这是一次运行的BASH脚本,用于在QNAP NAS上创建自动运行环境。 当NAS启动时,这可用于自动执行自己的脚本。 它能做什么 此安装程序脚本将autorun.sh处理器写入.system目录下的默认卷中。 然后将其符号链接到DOM,...

Global site tag (gtag.js) - Google Analytics