Bash - while循环返回提示

时间:2015-08-18 08:33:12

标签: bash shell while-loop

我有一个像这样的简单脚本:

#!/bin/bash
while true
do
something...
sleep 300
done
other commands...

不知道它是否可行,但我希望while循环在后台执行并执行其他命令或返回提示。

我尝试了/path/to/script &,它返回提示,但是只有当我关闭终端窗口时才会启动循环。

2 个答案:

答案 0 :(得分:0)

#!/bin/bash

function doSomeThing(){
while true;do
    echo "do some thing"
    sleep 3;
done
}

doSomeThing &

echo "I am out"

# vim:ai:et:sts=4:tw=80:sw=4:

答案 1 :(得分:0)

我建议将您的程序放入一个可以轻松管理多个任务的功能,例如。

#!/bin/bash

task1(){
    while true
    do
        echo "task 1"
        sleep 5
    done
}

task2(){
    while true
    do
        echo "task 2"
        sleep 3
    done
}

task1 &
task2 &

此处&表示将命令放入后台进程。从上面的示例task1task2将在后台并行运行。