Ищу инструмент, который объединяет вывод из разных оболочек

Ищу инструмент, который объединяет вывод из разных оболочек

У меня есть bash-скрипт, который запускает три процесса, например:

CD FOO_DIR && ./run-foo
CD BAR_DIR && ./run-bar
CD BAZ_DIR && ./run-baz

Мне нужен инструмент, который разделяет родительскую оболочку на три секции (горизонтально или вертикально — разницы нет) и показывает вывод каждого дочернего процесса в каждой секции соответственно.

Существует ли такой инструмент?

решение1

Как уже было сказано, экран должен соответствовать вашим потребностям.

Создайте файл конфигурации экрана, который выглядит следующим образом:

startupmessage off
split
split

screen -t top top                       # -t <title> <command>
screen -t netstat watch netstat -tanp 
screen -t date watch date 

select top # In the first screen show the screen titled 'top'

focus down # Focus down to next screen
select netstat # Show screen titled 'netstat'

focus down # Focus down to the next screen
select date # Show the screen titled date

Давайте назовем этот файл screen_run. Затем просто запустите screen. Параметр -c указывает файл конфигурации для использования :

screen -c screen_run

Если вам нужны вертикальные разделения, вы можете использовать split -vвместо split.

Видетьhttps://www.gnu.org/software/screen/Чтобы получить больше информации.

решение2

В дополнение к screen, вы можете захотеть проверитьtmuxтакже. У каждого есть свои сильные и слабые стороны, и вы можете предпочесть один способ управления расколами другому.

Связанный контент