日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

用shell脚本守护后台进程

發布時間:2025/5/22 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 用shell脚本守护后台进程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

假如現在在 crond 中添加了一個每分鐘執行的定時任務如下:

*/1 * * * * root cd /data/sbin; sh test.sh >/dev/null 2>&1

?

為了防止上一個進程還沒完成,下一個進程就啟動,我們可以創建一個shell來守護該進程,方法如下:

#!/bin/sh ps aux | grep test/init | grep -v grep > /dev/nullif [ $? != 0 ] thenecho "Yii test not runing"cd /data/web/; /usr/bin/php yii test/init 1>/dev/null 2>/tmp/test.txt & fi

注意:

如果使用文本編輯是在windows下通過記事本編寫的這個文件,運行 在linux環境下。

報??unexpected end of file 的錯,原因是 windows 和 Linux的換行符不同導致的。

解決思路:

DOS下的文本文件是以\r\n作為斷行標志的,表示成十六進制就是0D 0A。而Unix下的文本文件是以\n作為斷行標志的,表示成十六進制就是0A。

【在windows里,換行用的兩個符號,回車\r,換行符號\n,在linux下只需一個符號\n就可以了.】

解決方案:

使用下面的命令將文件格式設置為unix格式即可解決上述錯誤。
vim? test.sh
:set fileformat=unix
:wq


?

轉載于:https://www.cnblogs.com/chrdai/p/9244706.html

總結

以上是生活随笔為你收集整理的用shell脚本守护后台进程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。