Просто для того, чтобы расширить сказанное Ансгаром в случае, если вы не очень хорошо знакомы с экраном gnu, наличие нескольких «окон» в одном сеансе экрана, вероятно, достигнет того, что вам нужно.
ctrl+ a, cсоздаст новое «окно» в вашем активном сеансе экрана. Вы можете переключаться между несколькими окнами (как указано Ansgar) с ctrl+ a, nв следующем окне, и ctrl+ a, pв предыдущем окне.
ctrl+ a, "даст вам список всех ваших открытых окон.
Использование этих быстрых клавиш позволит вам быстро и легко переключаться между различными терминалами, выполняя свою задачу без использования нескольких сеансов экрана.
Если добавить следующую строку в ~ / .screenrc он всегда будет отображать открытые окна и который один выбран, так что вам не нужно отслеживать, какие окна вы на помня.
hardstatus alwayslastline '%{= kg}[ %{G}%H %{g}][%= %{= kB}%?%-Lw%?%{+b r}(%{G}%n*%f %t%?(%u)%?%{r})%{-b B}%?%+Lw%?%?%= %{g}%]'
Это строка hardstatus, которую я люблю использовать, но она полностью настраиваема (см. Справочную страницу или поиск в Google для "gnu screen hardstatus").
Есть множество других вещей, которые вы можете сделать с ним (например, назвать разные открытые окна), поэтому стоит прочитать некоторые учебники.
Вот пара, которую я нашел с помощью быстрого поиска:
http://news.softpedia.com/news/GNU-Screen-Tutorial-44274.shtml
http://www.ibm.com/developerworks/aix/library/au-gnu_screen/
И конечно самое полезное из всех:
# From your terminal:
$ man screen
Надеюсь, это поможет.
Мэтью
^a
на что-то другое, чтобы не было смешно раздражать использование строкового редактирования в стиле emacs в bash, что угодно еще. Я использую^t
.То, что говорят другие, правильно. Я просто хочу упомянуть
tmux
является альтернативойscreen
. У них очень похожие команды.Оба
screen
иtmux
предлагают несколько окон для сеанса работы, и это, вероятно, то, что вы хотите.tmux
дополнительно предлагает прыжки между несколькими сессиями (каждая из которых имеет свои собственные окна). Тебе это понадобится очень редко.Вот несколько ссылок на документацию по screen и краткий курс о tmux .
источник
Через столько времени я создал скрипт, чтобы обойти эту совершенно отсутствующую функцию. Прежде всего, это нужно FIFO:
Этот именованный канал полезен для связи между отключенным сеансом и сеансом «Главный экран без экрана».
Файл sc (в $ PATH):
Пример «CONFIGFILE»: ~ / .screen / Monitorrc
Результат: когда вы хотите запустить тип экрана:
или другой сеанс, который вы хотели бы изобрести, я использую Session Work для разных вещей
Пример: ~ / .screen / Workrc
Теперь мы находимся в Session Monitor, когда набираем:
Монитор сеанса отсоединяется и пишет «Работа» в именованную трубу. Следовательно, первый скрипт sc идет вперед и присоединяет сессию «Работа».
Sc вызывается из сеанса Monitor close.
Когда мы отсоединяем все сеансы, мы находимся в бесконечном цикле, поэтому мы должны выполнить Ctrl-c, чтобы выйти.
источник
Вы можете сделать это с помощью простого сценария оболочки, как
Предположим, у вас есть несколько открытых экранов. Предположим также, что вы относите их к категории работы и данных.
Применяя
screen -ls
, вы должны иметь свои экраны, как этоТеперь давайте выделим отдельные экраны с помощью
grep
.Вы должны получить что-то вроде этого
Теперь давайте выберем те, которые вы хотите (например, данные), снова используя
grep
.Это изолирует только экраны данных. Вы можете изменить ключевое слово grep с помощью регулярных выражений для поиска, чтобы настроить поиск.
К счастью, результат хорошо структурирован и разделен табуляцией. Теперь давайте разделим столбцы на поля и выберите 2-е поле, используя
cut
.Вам нужно будет нажать
ctrl+v
затем вкладку, чтобы вставитьtab
параметр после разделителя-d
. Результаты должны быть такими.Теперь пакет это в команду , используя
...
кавычки и петлю над результатами , как это. Всегда проверяйте сформулированные команды 1-й перед тем, как запускать их. я использовалecho screen -r
Если все идет хорошо, попробуйте без
echo
.Вуаля. Каждый экран, от которого вы отсоединяетесь, переносит вас на следующий.
Приятного просмотра !!
источник
Я написал сценарий узла, чтобы позволить пользователю выбрать экранную сессию для присоединения из списка, используя клавиши со стрелками. Я сделал это пакет npm. Вы можете проверить его здесь: экран-команду . Или просто
npm i -g screen-command
попробуйте, если у вас уже установлен node.js. После установки пакета используйте командуsc
для вызова списка экранов.Я надеюсь, что это облегчает переход на нужный экран.
источник