从一个.sh脚本运行多个.sh脚本? CentOS的

时间:2013-09-07 04:55:07

标签: linux shell terminal centos

如何从一个.sh脚本运行多个.sh脚本并在不同的终端中运行它们?我已经

  

/root/A.sh& amp; /root/B.sh& amp; /root/C.sh

问题是它同时在同一个终端运行所有这些,并且没有&'s,它在前一个运行完毕后运行它们,我怎样才能让它们在同一个终端运行时间在不同的终端?

5 个答案:

答案 0 :(得分:1)

您可以启动首选终端程序(即rxvt,xterm等)并传递要作为选项执行的命令,如(例如):

rxvt -display :0 -e "/root/B.sh"&

这假设您使用X服务器和窗口管理器在本地控制台上运行。

答案 1 :(得分:0)

Here是关于如何为多个shell会话配置屏幕的教程,here是另一个使用屏幕的教程

修改

您可以检查this是否使用了屏幕和其他2个多处理shell的替代方案

答案 2 :(得分:0)

这是一种利用gnome终端标签功能的方法:

gnome-terminal \
  --tab-with-profile=Default --title=A.sh --command="/root/A.sh" \
  --tab-with-profile=Default --title=B.sh --command="/root/B.sh" \
  --tab-with-profile=Default --title=C.sh --command="/root/C.sh"&

答案 3 :(得分:0)

我现在不在我的电脑上,所以我无法测试这个......

尝试在主脚本中包含以下内容以启动sh(或您喜欢的任何shell),将脚本作为后台任务调用以停止主脚本阻止。

sh script1 &
sh script2 &
sh script3 &

千电子伏

答案 4 :(得分:0)

使用konsole,您可以

konsole -e command [args]

e.g。

konsole -e /bin/bash root.sh &  ## For konsole, placing it on the background is optional

您还可以设置窗口的标题(取决于版本)

konsole -p tabtitle="Window title." -e command [args]

使用xterm

xterm -e command [args] &  ## xterm needs to be placed on background.