確保一次只運(yùn)行一個(gè)shell腳本的快速和骯臟的方法確保在給定時(shí)間只運(yùn)行一個(gè)shell腳本的快速和骯臟的方法是什么?
3 回答

當(dāng)年話下
TA貢獻(xiàn)1890條經(jīng)驗(yàn) 獲得超9個(gè)贊
LOCKFILE=/tmp/lock.txtif [ -e ${LOCKFILE} ] && kill -0 `cat ${LOCKFILE}`; then echo "already running" exitfi# make sure the lockfile is removed when we exit and then claim ittrap "rm -f ${LOCKFILE}; exit" INT TERM EXIT echo $$ > ${LOCKFILE}# do stuffsleep 1000rm -f ${LOCKFILE}
kill -0
trap
kill -9
).

收到一只叮咚
TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超5個(gè)贊
flock(1)
#!/bin/bash( # Wait for lock on /var/lock/.myscript.exclusivelock (fd 200) for 10 seconds flock -x -w 10 200 || exit 1 # Do stuff) 200>/var/lock/.myscript.exclusivelock
(
)
util-linux
添加回答
舉報(bào)
0/150
提交
取消