如何运行同步命令

时间:2014-04-09 08:49:47

标签: multithreading bash parallel-processing

我有一个bash脚本。

f1 () 
{ 
    for ((i=1; i<6; i++))
    do
        a=$(echo -e "\033[41m ")        
        echo -n " $a";
        echo -en "\033[0m";
        sleep 1;
        echo -en "\b";
        echo -n ' '
    done
}

f2 () 
{

    a=$(echo -e "\033[41m \033[0m") 
    echo -en "\033[5;50H$a"
    for ((i=1; i<6; i++))
    do
        echo -en "\b"
        echo -en ' '
        echo -en "\b\b"
        echo -n "$a"
        sleep 1
        echo -en "\033[0m"
    done
}

f1
f2

f1将对象向右移动; f2将另一个对象移到左边;

我可以做什么同时执行这两个功能,以便我看到两个对象同时移动?

#this wont work
f1 & 
f2 & 

1 个答案:

答案 0 :(得分:1)

在后台运行它们并行:

  #export functions so parallel can see them
  export -f f1
  export -f f2
  #run both functions
  parallel f1 f2