繁体   English   中英

如何在后台一个接一个地运行命令?

[英]How do run commands in background one by one?

nohup php /home/www/api/24 > 24.out 2> 24.err < /dev/null
nohup php /home/www/api/27 > 27.out 2> 27.err < /dev/null
nohup php /home/www/api/19 > 27.out 2> 16.err < /dev/null

我需要进行数千个api调用,并且需要一个接一个地完成,因此我不会用Web调用淹没另一台服务器。 运行sh文件后,如何在不中断进程CTRL + Z的情况下关闭终端?

您输入...

$ screen

...然后按Enter。

运行命令或脚本。

按Ctrl-a,然后按d

然后,您可以断开连接,注销,执行任何操作...稍后再返回并检查脚本:

$ screen -r

然后,您想知道如果没有它,您将如何相处。

https://www.gnu.org/software/screen/

将所有内容放入脚本,然后使用nohup运行该脚本:

#!/bin/bash
for i in 24 27 19 ...
do
    php /home/www/api/$i > $i.out 2> $i.err
done

然后做:

nohup /path/to/script </dev/null >/dev/null 2>&1 &

您也可以在此文档中使用batch(1)命令,例如:

 batch << EOJ
   php /home/www/api/24 > 24.out 2> 24.err < /dev/null
   php /home/www/api/17 > 17.out 2> 17.err < /dev/null
   php /home/www/api/19 > 19.out 2> 19.err < /dev/null
 EOJ

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM