Я пытаюсь создать команду, которая запускает screen
, создает четыре сессии с разными именами и запускает четыре разные команды.
Я знаю, как сделать это вручную:
1. screen
2. ./command1 args
3. CTRL-A :sessionname Session 1
4. CTRL-A C
5. (GOTO 2)
Могу ли я сделать это с помощью сценария Bash или что-то? Как бы я это сделал?
linux
bash
gnu-screen
Hughes
источник
источник
.screenrc
вместо этого следует принять ответ ниже.Чтобы запустить несколько сеансов автоматически, настройте
.screenrc
файл, файл конфигурации для экрана. В нем вы можете создавать сеансы, запускать программы, изменять рабочий каталог и т. Д. Я использую его для инициализации сеанса экрана.Простой экзамен для файла .screenrc:
Эти
screen
команды над каждым создать один экран сессии.-t
устанавливает заголовок сеанса; остальная часть строки - команда для запуска и ее параметры.Таким образом, первая и вторая
screen
строки начинают сеанс и запускаютсяvim
изнутри. Третий просто начинает сеанс и выводит вас по запросу.chdir
изменяет рабочий каталог для всех последующих сеансов.Если вы хотите иметь несколько
.screenrc
файлов, просто назовите их так, как вы хотите, и выберите один с помощьюscreen -c myscreenrc
.источник
Вы можете использовать опции d, m, S вместе:
S: создать экран
d: отсоединиться от экрана
m: для принудительного создания экрана независимо от того, вызывается ли экран из другого экрана или нет.
источник
screen -dmS s1
и т. Д. Я не знал, что при группировке параметров аргумент не обязательно должен быть последним.