mac下使用nohup运行程序以及执行定时任务

34 篇文章 0 订阅

最近在思考队列怎么一直开启,一直执行的问题,想到了可以写一个死循环,不停的去执行

用nohup挂在就可以了

 

因为mac自带PHP和apahce

只需要用root用户启动apache

sudo apachectl restart

PHP启动方式为  php-fpm start  一般情况下都是默认启动的;

接着要知道项目运行的目录为 /Library/WebServer/Documents;

默认运行的是/Library/WebServer/Documents/index.php文件;

我们可以先写一个简单的demo来测试是否一直开着进程在执;

 

直接在mac终端执行 sudo  nohup php /Library/WebServer/Documents/index.php>>/Library/WebServer/Documents/hi.txt

查看是否成功

cat /Library/WebServer/Documents/hi.txt

成功了的 ok

当然这个方式也可以用来执行队列,定时任务之类的

比如这个tp5项目

直接运行

php 文件目录/think test即可

 php /Library/WebServer/Documents/tp5/think test

 

 

如果是写定时任务的话,可以根据情况来写

分0-59

时0-12

天1-31

月1-12

周0-7

比如每天凌晨0:01执行date.php

1 0 * * * php /Library/WebServer/Documents/tp5/think date

每5分钟执行Minutes.php

*/5 * * * * php /Library/WebServer/Documents/tp5/think minutes

每月第一天中午12点整执行Month.php

0 12 1 * * php /Library/WebServer/Documents/tp5/think month

 

如果要测试就可以把输出写到日志或者写到新的文件里面

 */2 * * * * php /Library/WebServer/Documents/tp5/think date >>/Library/WebServer/Documents/tp5/test.txt

这句话表示每两分钟服务器执行以下php think date,且把输出写到test.txt文件

经过测试这个也是成功的,前提是先要把定时任务写到crontab中

使用root用户来编写定时任务

sudo -i  输入密码

crontab -e 编写定时任务  按键盘i出现insert 表示可以写入 写好后按esc ,再按!wq既可强制保存退出

crontab -l 查看定时任务列表

cat /Library/WebServer/Documents/tp5/test.txt可以查看是否写入成功

 

 

nohup和screen是在Linux系统中常用的运行后台任务的工具,它们在功能和使用方式上有一些区别。 首先,nohup是一个可以运行命令或脚本的命令。使用nohup命令可以让命令在后台运行,并且不会受到终端退出的影响。使用nohup的示例如下: ``` nohup command & ``` 其中,command是要运行的命令或脚本,&表示在后台运行。例如,要在后台运行一个名为task.sh的脚本,可以使用以下命令: ``` nohup ./task.sh & ``` nohup命令会将命令的输出信息重定向到nohup.out文件中,可以通过查看该文件来获取命令的输出。 相比之下,screen是一个用于多路复用命令行界面的工具。使用screen可以在一个终端窗口中同时运行多个会话,并且可以在不同的会话之间切换。使用screen的示例如下: ``` screen -S session_name ``` 其中,session_name是会话的名称,可以根据需要指定。进入会话后,可以在其中运行命令或脚本。 要在screen会话中运行后台任务,可以先进入会话,然后使用nohup命令来运行命令或脚本。例如,要在一个名为my_session的会话中运行任务,可以按照以下步骤进行: 1. 进入my_session会话:`screen -r my_session` 2. 运行需要后台运行的命令或脚本:`nohup command &` nohup命令将任务放在后台运行,并且不受终端退出的影响。可以通过查看nohup.out文件来获取命令的输出。 总结来说,nohup适用于简单的后台任务,它可以让命令在后台运行并且不受终端退出的影响。而screen适用于需要同时运行多个会话,并且能够在会话之间切换的情况下使用nohup运行后台任务。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芝麻开门2015

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值