今天想在linux上后台运行一个JOB, 但一把命令在后台执行,在命令行后加了一个&,
用jobs 命令查看, 发现无法在后台运行, 状态变成stopped。
在网上找了找资料, 原来是那命令行一直在等待输入输出, 所以一直阻塞在那,
drush get-image-regenerate < /dev/null > /dev/null 2> /dev/null &
这样修改之后就能运行了,
jobs
[1]+ Running drush get-image-regenerate < /dev/null > /dev/null 2> /dev/null &
然后想退出terminate或LOGOUT时, 该条命令还会执行,
我就执行了一下disown
disown -h %1
现在即使我退出用户, 这条命令始终在后台执行了。
本文介绍如何在Linux中正确地将命令置于后台运行,并解决了命令因等待输入输出而被阻塞的问题。通过重定向标准输入输出到null设备文件,确保了命令能够顺利执行而不干扰其他操作。
611

被折叠的 条评论
为什么被折叠?



