linux使用flock解决crontab任务冲突
生活随笔
收集整理的這篇文章主要介紹了
linux使用flock解决crontab任务冲突
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Linux的crontab最小的間隔是每分鐘執(zhí)行一次,但是如果在這一分鐘之內(nèi),之前的命令并沒(méi)有執(zhí)行完成呢?這樣就會(huì)產(chǎn)生沖突。接下來(lái)我介紹一個(gè)解決沖突的辦法,那就是linux的flock文件鎖.
格式:
flock [-sxun][-w #] fd#
flock [-sxon][-w #] file [-c] command
參數(shù)是:
-s, --shared: 獲得一個(gè)共享鎖 -x, --exclusive: 獲得一個(gè)獨(dú)占鎖 -u, --unlock: 移除一個(gè)鎖,通常是不需要的,腳本執(zhí)行完會(huì)自動(dòng)丟棄鎖 -n, --nonblock: 如果沒(méi)有立即獲得鎖,直接失敗而不是等待 -w, --timeout: 如果沒(méi)有立即獲得鎖,等待指定時(shí)間 -o, --close: 在運(yùn)行命令前關(guān)閉文件的描述符號(hào)。用于如果命令產(chǎn)生子進(jìn)程時(shí)會(huì)不受鎖的管控 -c, --command: 在shell中運(yùn)行一個(gè)單獨(dú)的命令 -h, --help 顯示幫助 -V, --version: 顯示版本?
下面是在crontab中的使用:
* * * * * flock -xn /tmp/aaa.lock -c 'php /home/aaa.php >> /home/aaa.log' . //-xn 文件鎖使用獨(dú)占鎖,如果鎖定則失敗不等待。?
轉(zhuǎn)載于:https://www.cnblogs.com/liujiaq/p/6782603.html
總結(jié)
以上是生活随笔為你收集整理的linux使用flock解决crontab任务冲突的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 梦到老公光着屁股怎么回事周公解梦
- 下一篇: TAppEncoder的main函数