相关疑难解决方法(0)

如果进程死了,如何编写bash脚本来重启?

我有一个python脚本,它将检查队列并对每个项目执行操作:

# checkqueue.py
while True:
  check_queue()
  do_something()
Run Code Online (Sandbox Code Playgroud)

如何编写一个bash脚本来检查它是否正在运行,如果没有,则启动它.大概下面的伪代码(或者它应该做类似的事情ps | grep?):

# keepalivescript.sh
if processidfile exists:
  if processid is running:
     exit, all ok

run checkqueue.py
write processid to processidfile
Run Code Online (Sandbox Code Playgroud)

我将从crontab中调用它:

# crontab
*/5 * * * * /path/to/keepalivescript.sh
Run Code Online (Sandbox Code Playgroud)

bash scripting cron

213
推荐指数
7
解决办法
21万
查看次数

当应用程序可以作为系统服务运行时,为什么要使用nohup?

我将这个问题放在stackoverflow上,因为我已经在这里找到了很多有关该主题的问题。

简短介绍

简单地说,nohup可用于在后台运行应用程序,并在用户注销或关闭终端或ssh会话后保持其运行,例如

这里有很多关于stackoverflow的示例问题,例如thisthat

我的问题很简单。

为什么选择了nohup,当有类似的选项upstartsystemd......其管理的应用作为服务于更方便的方式(运行级别,...)?

阅读有关相似主题的许多问题,唯一的选择似乎是nohup。几乎从来没有答案是这样的:“ ...使用暴发户脚本,因此一切都由您完成...”


我主要使用eg upstart,除了可能用于快速而肮脏的测试场景。

我缺少重要的东西吗?

linux bash upstart nohup systemd

0
推荐指数
1
解决办法
4268
查看次数

标签 统计

bash ×2

cron ×1

linux ×1

nohup ×1

scripting ×1

systemd ×1

upstart ×1