打开一系列终端并运行bash文件

时间:2017-03-30 09:03:37

标签: python bash terminal submit tmux

我有很多bash文件需要在独立的终端中执行。需要注意的是,运行带有2个内核的bash文件需要1个小时。我想编写一个python代码,一次打开一系列终端并自动提交bash文件。我想过FOR循环和子流程库,但我无法得到我想要的东西。

你能帮帮我吗?

先谢谢你了!

P / s:我使用的是Ubuntu 16.04,Python 2.7。

1 个答案:

答案 0 :(得分:0)

你可以使用screen / tmux来做这类事情。 tmux的示例:

tmux new-session 'script1 param1' \; split-window 'script2 param2'

Tmux将在分割窗口中打开两个终端,并同时运行您的脚本。如果您需要运行更多脚本,只需添加另一个\; split-window 'script param'

如果您需要从启动脚本或cron运行它,您可以分离运行它:

tmux new-session -s my-session 'script1 param1' \; split-window 'script2 param2' \; detach-client

如果你想看看分离的tmux中发生了什么,你可以再次附加它:

tmux att -t my-session

此外,您可以将所有命令放到分离的配置文件中并运行它。例如,创建文件tmux-run-my-scripts.conf

new-session -s my-session 'script1 param1'
split-window 'script2 param2'
detach-client

运行它:

tmux source-file /path/to/tmux-run-my-scripts.conf