在BASH中同时运行两个xterm命令

时间:2018-10-08 12:25:48

标签: bash centos centos7 xterm

我正在尝试从同一自动化脚本在xterm窗口中运行两个不同的程序。我当前的代码如下:

#!/bin/bash/sh
echo "STARTING PROGRAM ONE"

    # change into correct directory
    cd ~/myProjects/ProgramOne
    xterm -e myProg1 -a P1 &> /tmp/ProgramOne/P1.txt

echo "STARTING PROGRAM TWO"

    # change into correct directory
    cd ~/myProjects/ProjectTwo
    xterm -e myProg2 -a P2 &> /tmp/ProgramTwo/P2.txt

# Code to kill the xterm process?

echo "******************************************"
echo "START AUTOMATION COMPLETE"
echo "******************************************"   

我要完成的工作是在两个不同的xterm窗口中运行两个位于不同目录中的单独程序,以便向最终用户证明程序运行正常。

当前,第一个程序可以正常运行,而当我按Ctrl + C时,第二个程序可以正常运行。但是,我希望两者同时执行。

我查看了一些SO方面的资源,但没有找到任何可帮助我解决此问题的信息。

我在CentOS7系统上,试图使此过程自动化。任何帮助或建议都很好。

谢谢!

1 个答案:

答案 0 :(得分:0)

在后台启动它们,然后等待它们完成:

#!/bin/bash/sh
echo "STARTING PROGRAM ONE"

    # change into correct directory
    cd ~/myProjects/ProgramOne
    xterm -e myProg1 -a P1 &> /tmp/ProgramOne/P1.txt &

echo "STARTING PROGRAM TWO"

    # change into correct directory
    cd ~/myProjects/ProjectTwo
    xterm -e myProg2 -a P2 &> /tmp/ProgramTwo/P2.txt &

# Code to kill the xterm process?
wait

echo "******************************************"
echo "START AUTOMATION COMPLETE"
echo "******************************************"