编写文件行为时杀死脚本中的进程

无名

在我的PHP脚本(作为Cron作业运行)中,我有

foreach($sites as $site)
{
    exec('./wkhtmltoimage-amd64 ' . $site . ' somefile.png');
    exec('./zopflipng -y somefile.png somefile.png');
}

每月为每个站点生成屏幕截图。

现在,此cron作业每月运行一次,并且在极少数情况下有人希望在该作业运行时删除映像,我不太确定会发生什么。图像被使用后会不会被删除吗?如果是这种情况,那么在不再使用它后如何将其删除?

我想到了一个可以终止该过程的解决方案,但是我也不确定结果。如果我用

lsof -t somefile.png

这将给我该过程的PID。这样,我可以使用以下命令删除网站的删除功能中的进程

exec('lsof -t somefile.png | kill -15');

杀死后,此帖子顶部附近的原始脚本是否还会继续?这项工作会被取消吗?Cron作业是否出错?我希望它能够继续前进到下一个站点。

你好

我想我只是测试一下文件是否存在,如果确实存在,则将其翻转。您应该能够从PHP相当容易地测试文件是否存在。您也可以在运行函数时从外壳程序(可能是Bash或Bourne Shell)执行此操作exec()

 exec('[ -f somefile.png ] && ./zopflipng -y somefile.png somefile.png');

杀死高管

解决您的问题的其他方面。如果您要问当您在PHP程序的kill一个或exec多个for循环中进行一个或两个循环时会发生什么,那么答案将是您的for循环应继续进行并继续下一次迭代而不会出现任何问题。

exec的是从你的PHP脚本独立的过程,所以,除非你exec的他们,做他们返回的状态代码什么的,调用者应该是没有,他们无论是成品还是被打死的聪明。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

编写脚本杀死用户进程?

来自分类Dev

从脚本杀死在 dockercontainer 中运行的进程

来自分类Dev

在Windows脚本中杀死Windows上由批处理文件启动的外部进程

来自分类Dev

退出脚本时杀死bash脚本中的后台进程

来自分类Dev

通过文件中给出的进程ID递归杀死进程

来自分类Dev

如何避免杀死bash脚本中的错误进程?

来自分类Dev

在Bash脚本中杀死所有静默进程

来自分类Dev

如何杀死通过cron运行的shell脚本中的进程?

来自分类Dev

在bash脚本中检查并杀死挂起的后台进程

来自分类Dev

在Linux上运行的python脚本中杀死进程

来自分类Dev

如何通过在程序中询问进程名称来杀死python中的进程窗口(脚本)

来自分类Dev

子进程中的Ctrl + c会在脚本的前面杀死一个nohup'ed进程

来自分类Dev

通过pid文件杀死进程

来自分类Dev

在zsh中如何运行为bash编写的脚本

来自分类Dev

Shell脚本自动杀死mysql睡眠进程

来自分类Dev

尝试通过shell脚本杀死进程

来自分类Dev

如何杀死启动新进程的脚本?

来自分类Dev

使用bash脚本杀死子进程

来自分类Dev

杀死与脚本相关的所有进程

来自分类Dev

杀死bash脚本创建的进程的最佳方法?

来自分类Dev

按名称杀死Shell脚本进程

来自分类Dev

编写脚本并尝试终止进程

来自分类Dev

如何从arr文件获取后台进程ID并杀死android中的进程

来自分类Dev

无法杀死FreeBSD中的进程

来自分类Dev

emacs杀死列表中的进程

来自分类Dev

杀死bash脚本不会杀死子进程

来自分类Dev

在脚本完成或被杀死后杀死子进程

来自分类Dev

如何在python脚本中使用名称(“ Web Content”)中的空格杀死进程

来自分类Dev

Ctrl + C时如何在shell脚本中杀死并等待后台进程完成?

Related 相关文章

热门标签

归档