如何在bash中从用户获取数据后将进程置于后台

时间:2015-09-17 08:20:35

标签: bash background-process

我想运行流程process_name,该流程使用不同的-b-e选项一个接一个地从用户获取数据,如下所示。 现在,问题是我希望这些流程在后台运行,因此我可以在process_name -b 100 -e 200之后运行process_name -b 0 -e 100

#!/bin/bash

i=0

while [ $i -lt 1000 ]
do

#  echo "$i"
 j=$[$i + 100]

 process_name -b $i -e $j

 i=$[$i + 100]

done

如果不使用nohup等,我怎么能这样做?

2 个答案:

答案 0 :(得分:0)

最简单的解决方案是添加"&"在命令结束时:

process_name -b $i -e $j &

您的流程将在执行后立即进入后台。你可以找到所有正在运行的工作" ps"或者"工作"命令。

答案 1 :(得分:0)

我找到了满足我的解决方案。即我只是重定向process_name的标准输入,其中包含:

process_name -b $i -e $j < input.txt &