Я часто делаю то же самое с tmux
:
cd
в данный каталог.tmux
- Переименуйте окно в то, что я делаю.
- Разбить окно по вертикали на 50%.
- Запустите один процесс в левом окне.
- Запустите другой процесс в правом окне.
- Прибыль.
Есть ли способ для меня, чтобы автоматизировать запуск всего этого, чтобы я мог запустить одну команду и получить окно, которое я ищу?
Ответы:
Archwiki спасает день! Инициализация сеанса на странице tmux дает пример.
Тем не менее, вместо того чтобы начинать tmux , как
tmux
,tmux new -s name
будем называть сессию , когда он начинает вместо того , чтобы дать ему номер.Инициализация сеанса
Tmux может открыть сеанс с предварительно загруженными окнами, включив эти данные в ~ / .tmux.conf:
Чтобы начать сеанс с разделенными окнами (несколькими панелями), добавьте команду splitw под новостью, которую вы хотите разделить; таким образом:
откроет 2 окна, второе из которых будет называться foo / bar и будет разделено вертикально пополам (50%), при этом foo будет работать над баром. Фокус будет в окне 2 (foo / bar), на верхней панели (foo).
Чтобы управлять несколькими сессиями, создайте отдельные файлы сессий из файла conf:
источник
Ответ Роба великолепен и объясняет, как именно обрабатывать сессии изнутри самого tmux. Теперь, если вы не возражаете против использования стороннего инструмента, tmuxinator - отличный проект, который помогает легко создавать и управлять сессиями .
Каждый сеанс управляется файлом конфигурации, который позволяет вам определять все ваши окна и панели вместе с их макетами и командами по умолчанию для запуска в них. Это также позволяет вам определять каталог проекта по умолчанию, конкретный сокет и демоны, которые должны быть запущены (например, mysql). В довершение всего, он также предоставляет простой способ присоединения к ним: просто запустите,
mux [session-name]
и он начнет сеанс или присоединится к нему, если он уже запущен. Я использую это в течение некоторого времени и люблю это (спасибо азиз !).https://github.com/aziz/tmuxinator
источник