Эффективность администрирования систем GNU/Linux напрямую зависит от используемых утилит. Возможность выполнять максимум задач в минимальный срок — приоритетная цель этого процесса. Команда screen Linux является одним из основных инструментов системного администратора.
По умолчанию screen не является стандартной утилитой в большинстве дистрибутивов, но работает везде одинаково. Поэтому сначала рассмотрим её инсталляцию, а затем — возможности и основные команды.
Установка утилиты screen
Разница в инсталляции программы на разных дистрибутивах заключается в программах управления пакетами и их командами.
Чтобы установить screen в Ubuntu, Linux Mint, Deepin и других систем семейства Debian, используйте команду apt:
sudo apt install screen
В Manjaro, Antergos и других Arch-подобных ОС screen располагается в AUR, поэтому используйте соответствующую программу управления пакетами, например aurman:
aurman -S screen
Для инсталляции screen в системах на основе Red Hat (например Fedora и CentOS) используйте утилиту dnf:
Как подключить монитор к ноутбуку.Как показать экран ноутбука на мониторе
dnf install screen
Основы работы команды screen
Принцип работы GNU/Linux в целом заключается в использовании небольших утилит, которые делают что-то одно, но хорошо. И эта программа — не исключение.
Команда screen Linux является консольной программой и имеет однозначное определение, соответствующее названию, — это оконный менеджер, разделяющий один физический терминал между несколькими процессами. Подходит для прямого либо удалённого администрирования.
Возможности программы
Screen позволяет переключаться между терминалами, в которых выполняются процессы, не прерывая их. Это особенно эффективно, когда необходимо производить сборку/установку ПО и мониторить дисковое пространство или использовать аппаратные ресурсы.
Screen может разделять текущий терминал на меньшее количество окон с возможностью запуска в них того же или других терминалов. Это ещё больше упрощает вышеописанную задачу, особенно при использовании больших мониторов.
Также к одной сессии screen может подключаться несколько пользователей. Это эффективно при обучении персонала.
Основные команды screen
Откройте терминал. Для запуска первого окна наберите:—
Создастся новая сессия программы и появится приветственное сообщение. Для его закрытия нужно нажать Space или Enter.
Все управляющие команды начинаются с комбинации клавиш Ctrl + a, затем следует буква или сочетание клавиш. Буквы разных регистров выполняют разные команды. Также сочетания можно заменять текстом. Для его ввода нажмите Ctrl + a и :, после чего вводите текст.
Например, чтобы создать новое окно, нажмите по очереди сочетание Ctrl + a и затем c. Для просмотра списка созданных окон нажмите Ctrl + a и w.
Всем разница между матовым и глянцевым монитором ?
Для перехода в любое из созданных окон сессии используется комбинация Ctrl + a и номер, который за ним закреплён, или Ctrl + a и «, после чего нужно выбрать стрелками необходимое. Для последовательного перехода используйте Ctrl + a и n (следующее окно) или p (предыдущее окно).
Чтобы разделить экран по горизонтали, нажмите Ctrl + a и S. Например, для разделения окна по горизонтали напишите split.
Будет создано новое окно снизу от текущего, и оно не становится активным. Чтобы разделить по вертикали, нажмите Ctrl + a и | (или введите split -v).
Были созданы новые пустые окна. Для переключения между ними используйте Ctrl + a и Tab (или напишите focus). Положение курсора указывает, какое окно является активным в данный момент. Для скрытия окна используйте Ctrl + a и X (или введите remove).
Чтобы запустить в новом окне терминал, нажмите Ctr + a и c (или наберите screen).
Чтобы скрыть все окна и оставить только текущее, используйте Ctrl + a и Q (или напишите only).
Переименовать окно можно с помощью Ctrl + a и A. Внизу появится строка с возможностью заменить старое название.
Чтобы скрыть все окна сессии, нажмите Ctrl + a и . Подтвердите решение нажатием y. Для выхода из менеджера окон нажмите Ctrl + a и d.
Команда screen обладает большим набором горячих клавиш. Полный их список можно посмотреть с помощью Ctrl + a и ?.
При создании новой сессии screen можно задать ей имя. Таким образом можно создать несколько сессий. Чтобы сделать это, используйте параметр -S, после которого укажите название.
screen -S name-of-screen
Посмотреть список запущенных сессий можно командой
Строка, идентифицирующая сессию, состоит из нескольких полей: id, название и статус.
Значение id отображается в списке всех запущенных процессов. Это означает, что его можно завершить с помощью команды kill. Завершить работу текущего окна можно с помощью комбинации Ctrl+a и k; подтвердите решение нажатием y.
Статус может иметь два состояния: Attached (задействован) и Detached (незадействован). Второе состояние у сессий, в которых ещё не происходили никакие процессы.
Чтобы перейти в нужную сессию, следует указать параметру -r её id или название.
Это всё основные команды screen Linux.
Как пользоваться screen Linux
Теперь давайте рассмотрим, как пользоваться screen Linux более подробно.
Пример 1. Необходимо отслеживать изменения файла в реальном времени. Для этого в одном окне будем вносить изменения в новый файл, а в другом — отображать файл командой tail с опцией -f:
При стирании содержимого показывается сообщение, что файл усечён, при этом этот текст в него, конечно, не записывается.
Пример 2. Необходимо отслеживать размер каталога в реальном времени. В одном окне записываем данные, в другом — отображаем, как изменяется размер домашнего каталога командой watch с задержкой в две секунды.
Выводы
Команда screen является эффективным инструментом для системного администрирования, особенно при работе с системой без среды рабочего стола. Имея один терминал, вы можете создавать несколько окон для обработки параллельных процессов без конфликтов между ними.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Источник: losst.pro
Вывод на экран
Вывод на экран — это тоже очень важный момент в программировании. Потому что большинство данных передаётся пользователю именно через экран.
Вывод на экран (да и вообще вывод в стандартное устройство и в файл) в Паскале выполняется с помощью функций Write и WriteLn.
procedure Write(var Файл; Параметры);
Если выполняется запись в стандартное устройство вывода (например, на экран), то файл не указывается:
Параметры — это одна или несколько переменных. Если переменных несколько, то они перечисляются через запятую и выводятся поочерёдно.
Процедура WriteLn выполняет аналогичные действия, только в конце своей работы ещё и переводит курсор на новую строку.
Впрочем, всё это вы уже знаете. Однако есть ещё кое-какие фишки, которые можно применять с процедурой Write в консольных приложениях.
Я говорю о форматированном выводе. Например, вы хотите вывести несколько значений в виде таблицы. Но таблица смотрится и воспринимается лучше, если её столбцы имеют одинаковую ширину. Но как этого добиться? Вот в этом то вам и поможет форматированный вывод.
Информацию о форматированном выводе вы можете найти в справочных материалах.
Поскольку консольные приложения сегодня используются довольно редко, то я расскажу только о двух форматах.
Вывод с одинаковой шириной
Этот формат удобно использовать для вывода таблиц. Для символов отводится одинаковое количество знакомест на экране, поэтому столбцы таблицы получаются одинаковой ширины. Формат такой:
Где S — это число, которое выводится на экран, а W — ширина поля, в которое это значение выводится. Выравнивание происходит по правой стороне, то есть пробелы добавляются слева перед числом.
Вывод вещественных чисел
Что выведет на экран программа s монитор
Тест-строки, язык Python,заранее спасибо
1. В программе используется символьная строка s:
s = «Привет от старых штиблет!»
Отметьте все правильные операторы, работающие с этой символьной строкой.
1. s = «12345»
2. «12345» = s
3. s[1] = «0»
4. s1 = s[:]
5. s[:] = s1
2. Что будет выведено на экран после выполнения программы?
s = «123»
s = s + «0» + s;
s = s + s;
print ( s )
3. Что будет выведено на экран после выполнения этой программы?
s = «123»
s = s + s[2] + s + s[3]
print ( s )
4. Что будет выведено на экран после выполнения этой программы?
s = «12345»
n = len(s) + len(«456»)
print ( n )
5. Что будет выведено на экран после выполнения программы?
s = «123456789»
s1 = «abcdef»
s = s[4:6] + «0» + s1[2:5]
print ( s )
6. Что будет выведено на экран после выполнения этой программы?
s = «0123456»
q = «abc»
s = s[:2] + s[5:]
q = q[0] + s + q[1:]
print ( q )
7. Что будет выведено на экран после окончания работы программы?
s = «0123456789»
q = s[2:]
n = q.find(«6»)
print ( n )
8. Что будет выведено на экран после выполнения этой программы?
s = «0123456789»
n = s.find(«456»)
q = s[:n+2] + s[n+5:]
print ( q )
9. Сколько единиц будет выведено на экран?
s = «123456»
while len(s) > 0:
s = s[2:]
print ( «1», end=»» )
10. Программа должна считать, сколько раз в строке S встречается подстрока «12». Какой оператор надо вставить вместо многоточия? Вводите ответ без пробелов.
c = 0
while True:
.
if p < 0: break
c += 1
S = S[p+2:]
11. Программа должна считать, сколько раз в строке S встречается цифра «0». Какой оператор надо вставить вместо многоточия? Вводите ответ без пробелов.
c = 0
for q in S:
if q == «0»:
.
12. Какой оператор надо вставить вместо многоточия, чтобы в строке S были записаны символы строки Q в обратном порядке? Вводите ответ без пробелов.
Q = «0123456789»
S = «0»
for k in range(1,10):
.
3 (8 оценок)
PascalMaster 7 лет назад
Светило науки — 6 ответов — 0 раз оказано помощи
1) 1, 4
2) 12301231230123
3) вылетит с исключением IndexError: string index out of range, ошибка в самом задании
4) 8
5) 560cde
6) a0156bc
7) 4
8)0123459
9) 1
10) подумаю еще
11) c+=1
хоть эта строчка и решает задачу, но тест ее не принимает, будь внимателен
12) S=Q[(k-len(Q))]+S
здесь так же эта строчка решает задачу, но тест ее не принимает, будь внимателен
Источник: vashurok.com