Основы работы в командной оболочке Linux
Командная строка, оболочка, консоль — эти термины используются для обозначения взаимодействия человека-оператора с операционной системой с применением стандартных устройств ввода-вывода, обеспечивающих ввод команд и получение результатов их выполнения. В операционных системах семейства Linux подобное взаимодействие обеспечивается специальным программным продуктом — оболочкой ( shell ) . Наиболее распространенной из них, является оболочка проекта GNU bash ( B ourne A gain SH ell ). bash основывается на оболочке Bourne ( sh ) созданной Стефеном Борном и включает в себя свойства множества других оболочек — C ( csh ) , Korn ( ksh ) , tc ( tcsh ) . bash была написана Брайаном Фоксом (Brian Fox ) и в настоящее время поддерживается Четом Рейми ( Chet Ramey ).
Свойства оболочки bash делают ее наиболее универсальным и удобным средством взаимодействия с ОС Linux:
— bash обеспечивает редактирование командной строки. Курсор может быть перемещен в любую позицию команды для изменения ее содержания.
— bash поддерживает режим истории команд, позволяя отображать и изменять ранее введенные команды. Оболочка bash также имеет несколько переменных, значения которых влияют на сохранение и повторный вызов ранее введенных команд.
— bash обеспечивает завершение частично введенных слов для имен переменных, пользователей, хостов, команд и файлов.
— bash обеспечивает гибкое управление процессами, позволяя приостанавливать их, перезапускать, переключаться между задачами переднего плана и фоновыми, и даже продолжать выполнение задачи при завершении родительского процесса.
— bash позволяет использовать функции и псевдонимы, выполнять арифметические операции и вводить арифметические выражения в качестве команд.
— bash позволяет создавать целые наборы последовательно выполняемых команд (сценарии или скрипты) с использованием гибкого и функционального языка программирования данной оболочки.
— bash имеет гибкие настройки, обеспечивающие изменение внешнего вида командной строки.
Оболочка bash может выполняться как в интерактивном, так и в неинтерактивном режимах. В первом случае программа bash взаимодействует с пользователем, во втором — используется для выполнения скриптов ( специально подготовленных текстовых файлов с последовательностью команд) .
Команда оболочки Linux — это строка символов из имени команды и аргументов, разделенных пробелами. Аргументы предоставляют команде дополнительные параметры, определяющие ее поведение. Например, команда
echo 12345
выведет на экран строку символов 12345, введенных в качестве аргумента команды.
Команды, являющиеся частью оболочки называются встроенными. Естественно, они могут отличаться для различных оболочек. Кроме того, в качестве команд используются имена исполняемых файлов. В качестве аргументов, командам передаются ключи или опции , состоящие из тире и одного или нескольких символов. Пример такой команды:
ls — команда для отображения информации о файлах.. При вводе без аргументов, эта команда просто отобразит список файлов в текущем каталоге. При вводе с параметром -l — список в длинном формате — с отображением атрибутов, владельцев, даты и времени.
При использовании нескольких ключей, их можно объединить. Ниже приведенные варианты команд идентичны :
Как получить подсказку по использованию команды Linux
При работе в командной оболочке Linux, в большинстве случаев, можно получить справочную информацию по использованию конкретной команды, введя ее имя с параметром —help :
ls —help — отобразить справку для команды ls . В большинстве случаев, для получения справочной информации, допускается использование ключа -h
ls -h В операционных системах семейства Linux, более подробную справочную информацию можно получить из комплекта документации, известного как man-страницы , поскольку он доступен по команде man . Этот комплект включает в себя 8 разделов, содержащих справочную информацию, которую можно вывести на экран с использованием команды man
Перечень разделов man-страниц :
1 — Команды уровня пользователя.
2 — Системные вызовы. Документация о библиотечных системных вызовах, как open, read, exec и т. п. Данный раздел обычно используется программистами.
3 — Библиотеки. Этот раздел также предназначен для программистов и содержит справочную информацию о библиотеках прикладных программ ( abs, rint и т.п.)
4 и 5 — Форматы системных и пользовательских файлов. Содержит документацию о различных форматах файлов, как например, файл passwd
6 — Игры. Описание игр, поставляемых с установленной системой.
7 — Драйверы. Документация к драйверам, как например ip или ipv6
8 — Поддержка системы. Документация с информацией о командах для системного администрирования ( init, fdisk, ifconfig и т.п.).
man 1 ls — отобразить справку для команды ls из первого раздела документации ( в нем хранится информация о командах уровня пользователя ).
На практике, если требуется справка именно о команде, номер раздела опускают. В таком случае, поиск будет выполнен по всем разделам, начиная с первого до совпадения с аргументом, заданным в команде man :
man ls — отобразить справку для команды ls из первого раздела документации, где она будет найдена.
Иногда отсутствие номера раздела в команде man даже предпочтительнее. Например, справка по команде
man 1 init — отобразить справку для команды init из первого раздела документации, завершится сообщением об отсутствии справочной информации, потому, что данная команда относится к командам поддержки системы и информация о ней содержится в 8-м разделе.
Для поиска справочной документации во всех разделах, используется опция -a :
man -a passwd — отобразить справку для аргумента passwd из всех разделов, где она будет найдена: В результате, отобразится справка по команде passwd из первого раздела и описание формата файла паролей passwd из пятого.
В качестве аргумента для строки поиска в команде man можно использовать шаблон:
man -a ip* — отобразить справку для всех параметров, начинающихся с ip из всех разделов справочной документации.
При просмотре справочной документации, отображаемой по команде man используются клавиши:
стрелка вверх/вниз — переход на строку вверх/вниз.
PgUp/PgDown — переход на страницу вверх/вниз.
Enter — переход на строку вниз.
Пробел — переход на страницу вниз
Q — выход из справки.
Также, удобным средством поиска справочной информации являются утилиты apropos и whatis , позволяющие выполнить поиск по ключевому слову в базе данных документации. Первая из них выводит те строки, которые содержат строку поиска в в именах справочных страниц и кратких описаниях, а вторая – показывает однострочные описания справочных страниц, которые имеются в начале каждой страницы. С параметрами по умолчанию команды выдадут различающуюся информацию. Например, команда whatis tar , выдаст информацию имеющую отношение к утилите архивирования tar , а команда apropos tar — выдаст информацию и об утилите tar , и, кроме этого, справочные данные, где строка “tar” является частью слова, например “s tar t”. Использование утилиты apropos на первый взгляд кажется не очень эффективным, однако, это не так. Например, команда apropos net позволит быстро получить краткую справку по сетевым утилитам, присутствующим в данной системе. В данных командах можно использовать параметр -s указывающий номер раздела справочной системы, в котором будет выполняться поиск:
apropos –s 1 net — выполнить поиск только в первом разделе man.
При поиске обе утилиты используют индексные базы данных, которые обновляются с помощью программы mandb ( или традиционной текстовой базы данных, создаваемой программой makewhatis ), поэтому поиск выполняется очень быстро. Дополнительные параметры командной строки, используемые apropos и whatis можно получить с помощью команды man .
Общие рекомендации для начинающих работать с командной строкой.
Работа в командной строке Linux имеет некоторые принципиальные отличия по сравнению с работой в среде Windows.
Во-первых, не забывайте, что строчные и заглавные буквы для Linux — это разные символы. В операционной системе Windows каталог TEMP и каталог Temp — это один и тот же каталог, в Linux — это два разных. То же самое касается команд, их ключей, имен пользователей ,паролей и т.п.
    Во-вторых, справка по команде с параметром —help и справка из man-страницы различаются. Последняя, как правило, более подробная, с примерами и ссылкой на связанные разделы документации.
В-третьих, доступный список команд и результат их выполнения зависит от ваших прав в системе. Как правило, потенциально опасные для целостности системы команды, и команды, влияющие на работу других пользователей, не доступны обычному пользователю. Полными правами по отношению к системе имеет только один пользователь ( суперпользователь )- root . Обычно, учетная запись данного пользователя используется только для изменения настроек системы, и в большинстве дистрибутивов Linux, после установки системы, нет возможности работать под root ‘ом в графической среде, в сеансах удаленного подключения, или даже при локальном входе в систему, как это сделано в Ubuntu . Такой подход позволяет предотвратить разрушение системы при ошибках пользователя, и вполне оправдан, однако существуют случаи, когда без прав root не обойтись. Для получения прав пользователя root ( суперпользователя, superuser ) , которому доступны все возможные команды, используйте команду su . Она позволяет сменить текущего пользователя. Если пользователь не задан, то подразумевается root. .
Для выполнения отдельно взятой команды от имени суперпользователя root или другого пользователя используется команда sudo :
sudo ifconfig — выполнить команду ifconfig от имени суперпользователя root
sudo su — Комбинация sudo и su — выполнить команду su от имени суперпользователя root. Данный вариант команды позволяет пользователю перейти в учетную запись root без сохранения текущей пользовательской среды (знак «-«).
Команда sudo может использоваться для интерактивного режима суперпользователя root (пользователя с администраторскими правами). Обычно этот прием используется для тех случаев, когда с правами суперпользователя нужно выполнить не одну команду, а несколько.
sudo -i — перейти в интерактивный режим с правами суперпользователя. Все последующие команды будут выполняться с наивысшими привилегиями, пока не будет завершен данный сеанс командой exit
Обычно, использование команды sudo предпочтительнее, чем использование su и, при дополнительных настройках системы, позволяет легко отдавать отдельным пользователям только строго необходимые привилегии.
Основная часть настроек sudo хранится в файле /etc/sudoers и задает правила, определяющие, какие пользователи, каких компьютеров, какие команды могут выполнять с вводом или без ввода пароля. Администратор системы может на какое-то время передать полномочия суперпользователя root любому пользователю, не передавая ему пароль от учетной записи root .
Начинающих пользователей Linux обычно пугает работа в командной оболочке из-за необходимости набирать слишком длинные строки команд, имена каталогов или файлов. Однако, в большинстве случаев, в таком наборе нет необходимости. При работе в среде командной оболочки очень удобно использовать режим подстановки имен с помощью клавиши Tab . Например, для получения списка файлов каталога /home/everyone пользователю необходимо набрать команду
Однако, оболочка позволяет обойтись без полного набора пути. Если после набора ls /h нажать клавишу Tab , то в командной строке будет подставлена недостающая часть имени каталога — ome , и в строке ввода отобразится
Аналогично, не нужно набирать полностью оставшуюся часть пути, а только e и Tab . Если существуют частично совпадающие имена файлов или каталогов, то подстановка выполняется только для общей части имени. Если в каталоге /home имеются подкаталоги everyone1 и everyone2 то после нажатия клавиши Tab выполнится подстановка общей части everyone и на экране отобразится список из возможных вариантов ввода — everyone1 и everyone2 . Остается только ввести недостающую часть имени ( 1 или 2 ). Тот же прием используется и при наборе команд. Например, если набрать в качестве команды символ e и нажать Tab то отобразится список всех доступных команд, начинающихся с буквы e , если затем набрать символ c и снова нажать Tab , то будет выставлена подстановка имени до echo , или если есть другие варианты — подстановка общей части и возможные варианты имени.
Как управлять выводом на экран.
  Для просмотра текста, ушедшего за пределы видимости экрана, используются комбинации клавиш SHIFT и PAGE UP или PAGE DOWN (в зависимости от направления просмотра).
Для приостановки вывода на экран — CTRL-S , отмена приостановки — CTRL-Q
Для вывода большого объема текста на экран в постраничном режиме используется команда less , в цепочке с основной командой. Объясню на примере. Пусть у нас есть текстовый файл mytxt размером на 10 экранов. Для вывода текста на экран (стандартный вывод) можно воспользоваться командой cat имя файла
cat mytxt
После выполнения этой команды вы увидите быстро промелькнувший текст и последний (десятый) экран вывода. Можно, конечно, воспользоваться комбинациями клавиш SHIFT-PAGEDOUN или SHIFT-PAGEUP для просмотра текста, но существует возможеость воспользоваться и командой less .
cat mytxt | less
Символ | означает объединение в цепочку выполнения команды выдачи текста cat и команды управления постраничным выводом less . В результате, после отображения на экране первой страницы текста , вывод будет приостановлен до нажатия
PAGE DOWN или ENTER (построчное перемещение). Для завершения постраничного вывода нажмите клавишу Q .
  В цепочки можно объединять несколько команд. Например, вам понадобилось вывести на экран в постраничном режиме все строки, содержащие слово mail. Для поиска можно воспользоваться командой
grep
Итоговая цепочка из трех команд:
cat mytxt | grep mail | less
  Для большинства дистрибутивов Linux вместо less можно использовать more .
Иногда удобно использовать одновременно несколько терминалов, переключаясь между ними (например, когда необходимо смотреть информацию журнала в одном окне и управлять процессами и настройками в другом).
Для переключения используется комбинация клавиш CTRL — ALT — F1. F6 (от первого терминала до 6-го или далее). Для переключения в графическую оболочку используется одна из комбинаций, которая может отличаться для разных дистрибутивов. Например, CTRL-ALT-F7 .
Чтобы запустить еще один графический сервер на этом же компьютере, используйте команду startx 1 — :1 . У вас добавится новый графический терминал. Чтобы перейти во второй графический терминал, нажмите Alt+F8 . , а чтобы вернуться в первый — Alt+F7 . Таким образом можно открывать до 64 графических терминалов. (startx 2 — :2 и т.д).
Для завершения сеанса работы в командной оболочке используется команда exit .
Вы можете создать журнал своей консольной сессии, в котором будет отображено все, что вы вводили с клавиатуры, и все, что выдавалось на экран терминала.
Для этого используется команда
script имя файла журнала
Чтобы прекратить запись в журнал введите команду exit .
Для просмотра истории ранее введенных команд используются стрелки Вверх/Вниз. При вводе набранной или вызванной из истории команды положение курсора относительно строки ввода значения не имеет.
Кроме того, в домашнем каталоге пользователя, имеется файл истории вводимых команд для данной оболочки, например .bash_history . Для отображения его содержимого на экране можно воспользоваться командой history .
Для просмотра информации в конечной части файлов ( например, журналов ) используется команда tail :
tail /var/log/mrssages — отобразить последние 10 строк ( значение по умолчанию ) из файла журнала /var/log/messages.
tail –n 100 /var/log/mrssages — отобразить последние 100 строк из файла журнала /var/log/messages.
Как перезагрузить или выключить компьютер.
  Одно и то же действие в Linux очень часто можно выполнить несколькими способами. В большинстве дистрибутивов Linux для перезагрузки или выключения компьютера используется shutdown . Команда имеет много опций, позволяющих выполнить перезагрузку в определенное время, быструю перезагрузку без проверки файловой системы, имитировать и отменять уже запущенный (ждущий своего времени) процесс перезагрузки.
Полный список опций можно получить по shutdown —help
Для немедленной перезагрузки (restart) команда будет выглядеть так:
shutdown -r now
  Для выключения питания (halt):
shutdown -h now
В большинстве дистрибутивов можно использовать короткие команды:
reboot — перезагрузка
halt — выключение
Можно также воспользоваться изменением уровня запуска системы командой init , когда-то бывшей основой инициализации системы System V (SysV). И хотя SysV считается устаревшей, в большинстве современных дистрибутивов, реализована поддержка совместимости с ней. В SysV команда init позволяла управлять запуском и завершением процессов в системе с использованием скриптов, хранящихся в /etc/inittab. Каждому уровню запуска соответствовал свой набор скриптов, в частности, уровень 0 реализовывал выключение питания компьютера, а уровень 6 — перезагрузку. Соответственно, в большинстве ОС семейства Linux и сейчас можно использовать команды
для выключения:
init 0
для перезагрузки:
init 6
Команду init можно использовать в тех операционных системах, где используется система инициализации SysV или обеспечивается полная совместимость с ней, для изменения уровней запуска.
Уровни:
1 — Однопользовательский режим. Доступ разрешен только пользователю root.
2 — Многопользовательский режим без поддержки сетевых функций.
3 – Многопользовательский режим с поддержкой сети.
4 — Зарезервировано.
5 — С использованием графической оболочки.
Если вам нужно завершить графическую оболочку (например, когда инсталляция некоторых приложений требует ее закрытия) введите:
Графическая оболочка закроется, и система перейдет на уровень запуска 3. Для возврата на уровень 5 введите:
Уровень запуска системы по умолчанию определяется значением initdefault из файла /etc/inittab. Для запуска системы с поддержкой графической оболочки она выглядит так:
Если 5 заменить на 3, то графическая оболочка при старте системы запускаться не будет.
Все выше сказанное относится к системам инициализации SysV (SystemV), которая много лет использовалась во всех дистрибутивах Linux для загрузки рабочей среды с помощью скриптов init . Однако, начиная с 2012г, наметился постепенный переход на systemd новую систему инициализации, изначально разработанную для дистрибутива Fedora, начиная с Fedora 14.8 . Попросту говоря, systemd — это демон инициализации других демонов в Linux, пришедший на замену используемому ранее скрипту инициализации (/sbin/init). Главная его особенность — распараллеливание запуска служб в процессе загрузки системы, что позволяет существенно ускорить запуск операционной системы. Реализация systemd значительно отличается не только логикой, но и принципами управления процессом запуска, набором программных модулей и конфигурационных файлов. Файла /etc/initd больше нет, и для определения уровня запуска в systemd используются символические ссылки, например:
— для состояния init 3
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
— для состояния init 5
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
Команды init N в дистрибутивах с использованием systemd пока поддерживаются, но очевидно, что ее время заканчивается.
Управление процессами в Linux.
Посмотреть список процессов в Linux можно с помощью команды ps . Если ее запустить без всяких параметров, то она выдает список процессов, запущенных в текущем сеансе пользователя. Полный список опций можно получить стандартно — выполнив
Для получения сведений об использовании ресурсов компьютера можно воспользоваться командой top

В верхней части окна выводятся суммарные данные о состоянии системы — текущее время, время с момента загрузки системы, число пользователей в системе, число процессов в разных состояниях, данные об использовании процессора и памяти.
Команда kill
Эти же действия (принудительное завершение процесса и изменение его приоритета) можно выполнить и без команды top.
Если в команде kill номер сигнала не задан, то используется значение SIGKILL, т.е предыдущую команду можно было ввести как kill PID:
kill 11597
При завершении процесса завершаются и порожденные им процессы.
Для завершения процесса по его имени используется команда killall:
killall mc — завершить процесс, в имени которого есть «mc»
killall -u user — завершить процессы, порожденные пользователем user
Изменение приоритетов — команды nice и renice
Для изменения приоритета процессов используются команды nice и renice. При запуске процесса, его приоритет задается значением родительского процесса, например, терминала xterm или командной оболочки ( shell ) . Команда nice позволяет запустить процесс с приоритетом, равным сумме родительского (например 8) и числа, задаваемого в качестве опции команды nice:
nice — команда
nice -4 mc — запустит mc с приоритетом = 8+4=12
Команда renice используется для изменения приоритета уже запущенного процесса:
renice -p PID
renice 4 -p 11597 — установить значение приоритета для процесса mc (PID=11597) равным 4.
После выполнения, renice выдаст строку результата:
11597: old priority 12, new priority 4 — старый приоритет 12, новый приоритет 4
Задание нулевого и отрицательного числа приоритета возможно только с правами root.
Перечень наиболее часто используемых команд:
Команды для работы с файлами и каталогами:
pwd – отобразить путь текущего каталога
cd – перейти в указанный каталог
ls – отобразить список файлов каталога, с ключом -l показывает дополнительные сведения о файлах.
cp – копирование файлов/папок
mv – перемещение файлов/папок
mkdir – создать папку
rm – удалить файлы/папки, с ключом -r удаляет и все вложенные папки, с ключом -f — удаляет открытые файлы или каталоги
rmdir – удаление пустой папки
chmod – изменить права доступа к файлу
chown — сменить владельца файла или каталога
find — найти файл. Задается исходный путь для поиска и шаблон поиска, find / -name .X* — искать от корневого каталога файлы, содержащие в имени символы .X
which — отобразить полный путь исполняемого файла, доступного в данной оболочке, например — which ifconfig
touch — изменить временные отметки файла. Удобно использовать для создания пустых файлов – touch myfile создаст пустой файл myfile .
Эти команды обычно используется от имени суперпользователя ( с командой sudo ).
reboot – перезагрузка системы
poweroff – выключение компьютера
reset – очищает окно терминала
passwd – сменить свой пароль, а суперпользователю — поменять пароль любого пользователя
users — отобразить список пользователей, вошедших в систему.
yum , dnf , apt , rpm — установка, удаление или обновление программного обеспечения в дистрибутивах на базе пакетов RPM (Red Hat Package Manager) – RedOS, Mageia, и т.п.
dpkg , apt , apt-get — установка, удаление или обновление программного обеспечения в дистрибутивах на базе Debian – Astra, Mint, Ubuntu и т.п.
ps – отобразить список текущих активных процессов
lsof — отобразить список открытых файлов процесса или пользователя
strace — отобразить список системных вызовов
last — отобразить историю перезагрузок и регистраций пользователей в системе
kill – послать сигнал процессу, обычно используется для принудительного завершения работы процесса.
killall – завершение работы всех процессов, имена которых заданы параметром командной строки
top – отображение списка текущих процессов и интерактивное управление ими.
ifconfig – конфигурация сетевых интерфейсов
route — таблица маршрутизации
ifup / ifdown — включить /выключить сетевой интерфейс
ip — просмотр или изменение параметров конфигурации протокола IP
netstat — отобразить состояние сетевых соединений
arp, ping, nslookup, traceroute — наиболее часто используемые команды сетевой диагностики.
Горячие клавиши терминала Linux
Какие сочетания клавиш использовать, чтобы работа с терминалом стала проще и быстрее.
Эта инструкция — часть курса «Linux: горячие клавиши и команды».
Смотреть весь курс
Введение
Терминал Linux — один из самых мощных инструментов на вооружении данного семейства операционных систем. Для неподготовленного пользователя, однако, вряд ли покажется чем-то удобным в использовании: горячие клавиши, к которым мы привыкли в Windows, часто не работают или работают не так, как мы от них ждем. В результате, первое знакомство с терминалом, как правило, бывает неприятным.
В данной статье мы рассмотрим комбинации клавиш, которые сильно упростят жизнь всем, кто работает с терминалом.
Как открыть терминал в Linux
В Ubuntu и других популярных дистрибутивах есть специальные горячие клавиши для того, чтобы открыть эмулятор терминала — специальную программу, которая является альтернативным источником ввода-вывода. Простыми словами, эмулятор терминала — это аналог стандартной консоли терминала внутри графической оболочки. Открыть терминал в Ubuntu можно с помощью комбинации клавиш Ctrl + Alt + T.
Управление окном эмулятора терминала
Указанные ниже сочетания клавиш упростят вашу работу с терминалом GNOME и большинством других приложений эмуляторов терминала.
- Ctrl + Shift + Q — закроет текущее окно терминала.
- Ctrl + Shift + T — откроет дополнительную вкладку терминала.
- Ctrl + Shift + W — закроет текущую вкладку.
- Ctrl + Shift + D — превратит вкладку в отдельное окно.
- Ctrl + PgUp — переместит на предыдущую вкладку.
- Ctrl + PgDown — переместит на следующую вкладку.
Переключение между tty-сессиями в терминале.
В терминале Linux есть возможность переключаться между разными сессиями терминала, своеобразными «рабочими столами» в контексте командной строки. Для переключения между разными сессиями, например, когда кажется, что терминал завис, нажмите комбинацию: Ctrl + Alt + f2. Вы можете переключаться между шестью разными сессиями. Для переключения назад на первую tty-сессию терминала нажмите Ctrl + Alt + f1.
Нажатие комбинации Ctrl + Alt + f7, в свою очередь, управляет отображением графической оболочки ОС.
Управление вводом: автодополнение команд и исправление опечаток
TAB
Клавиша TAB — самая частая и основная в использовании среди всех горячих клавиш Linux. Данная клавиша поможет вам дополнить команду или путь к файлу или предложит варианты, если их несколько.
Для использования данного функционала начните набирать команду и нажмите TAB после введения нескольких символов.
- Одно нажатие — дополняет команду.
- Два нажатия — предлагает несколько вариантов, если введенный текст имеет несколько вариантов продолжения. Например, двойное нажатие Tab поможет написать длинный путь к нужному файлу или директории.
Ctrl + Shift + «-»
Сочетание клавиш Ctrl Shift и знака «минус» поможет вам отменить последний ввод в терминал. Команда очень полезна, если вы выбрали не тот вариант из меню предложенных в автодополнении или сделали опечатку.
Ctrl + T
Это сочетание клавиш меняет местами два соседних символа и может быть очень полезна, если вы опечатались и написали слово неправильно. Например, используя данное сочетание клавиш, можно с легкостью исправить selectle на правильный вариант — selectel.
Alt + T
Это сочетание клавиш уже посерьезнее, чем предыдущее и меняет местами целые слова. Например, с помощью этого сочетания, можно парой нажатий исправить I Selectel Love на правильный вариант — I Love Selectel.
Alt + Backspace и Alt + D
Эти два сочетания помогут быстро удалить ненужные части введенных ранее команд.
- Alt + Backspace поможет удалить слово, стоящее перед курсором (слева).
- Alt + D удаляет все символы, которые находится справа от курсора в текущей строке.
Управление курсором
В какой-то момент стрелочек на клавиатуре будет недостаточно для быстрого перемещения по тексту, и вам понадобятся новые комбинации. Они позволят быстрее ориентироваться в тексте и набирать команды.
- Ctrl+A (Home) совершит быстрый переход в начало строки.
- Ctrl+E (End) переместит курсор в конец строки текста.
- Alt+B переместит курсор назад (влево) на одно слово.
- Ctrl+B переместит курсор назад (влево) на один символ.
- Alt+F сдвинет курсор на слово вправо.
- Ctrl+F сдвинет курсор на слово вправо.
- Ctrl+XX мгновенно переместит курсор в начало текущей строки, выделив весь текст на своем пути. С помощью этого сочетания клавиш можно выделить строку или исправить что-то в ее начале. Второе нажатие комбинации переместит позицию курсора назад.
Работа с буфером обмена
В терминале также есть возможность пользоваться буфером обмена: копировать в него текст, вырезать и вставлять в строку или в файл, открытый в терминале.
Ctrl + W
Это сочетание клавиш поможет вырезать стоящее перед курсором слово и скопировать его в буфер обмена.
Ctrl + U
Это сочетание вырежет и скопирует в буфер обмена текущую строку.
Ctrl + K
Сочетание клавиш Ctrl и K вырежет строку, находящуюся справа от курсора.
Shift + Insert
Данное сочетание клавиш нужно для того, чтобы вставить в терминал текст, находящийся в буфере обмена.
Ctrl + Y
Вставит в поле ввода последний скопированный или вырезанный в буфер обмена текст.
Форматирование текста в терминале
Следующий набор горячих клавиш сильно упростит работу с регистром символов, введенных в терминал. В Linux и UNIX-системах регистр играет важную роль, поэтому данные команды также будут очень полезны.
Alt + U
После того, как вы нажмете это сочетание клавиш, все символы справа от курсора и до конца текущего слова сменят регистр на верхний.
Alt + L
Сочетание Alt + L работает наоборот: все символы справа от курсора и до конца текущего слова сменят регистр на нижний.
Alt + C
При активации этого сочетания клавиш символ, находящийся под курсором, изменит регистр с нижнего на верхний, а курсор переместится в конец слова.
Работа с историей bash
Терминал хранит историю выполненных пользователем команд. Если вы хотите ее посмотреть, выполните следующую команду:
history
Эта команда не очень удобна, когда нужно быстро вспомнить ранее введенную команду и выполнить ее в командной оболочке. В этом нам помогут сочетания клавиш.
Ctrl + P
Данное сочетание клавиш заменяет стрелку «вверх». Используйте его, чтобы переместиться к команде, выполненной ранее. Вы можете использовать данное сочетание неограниченное количество раз, каждый раз перемещаясь к более ранней команде.
Ctrl + N
Это сочетание клавиш, в свою очередь, является альтернативой стрелке «вниз» и нужно, чтобы переместиться по истории в обратную сторону.
Ctrl + R
После нажатия этого сочетания клавиш в терминале появится строка поиска, которая поможет найти и выполнить команду из истории команд, ранее запущенных через терминал. Для выполнения предложенной команды, просто нажмите Enter, а для редактирования предложенной команды или выхода из поиска — Esc.
- Ctrl + 0 сразу выполнит найденную команду без изменений.
- Ctrl + G завершит работу с инструментом поиска по истории без выполнения найденной команды.
Alt + R
Если вы нашли в истории команду, уже отредактировали и хотите отменить изменения, нажмите это сочетание клавиш. Команда вернется к первоначальному виду.
Управление процессами
В терминале Linux также есть горячие клавиши для легкого управления запущенными в терминале процессами.
Ctrl + C
Данное сочетание клавиш необходимо знать любому пользователю терминала. С его помощью можно завершить процесс, выполняющийся на данный момент в терминале. Это сочетание клавиш мгновенно отправит программе сигнал SIGINT, и если программа не завершит работу должным образом, он будет принудительно остановлен. Иными словами, эта комбинация убивает текущий процесс.
Ctrl + D
Сочетание Ctrl + D завершает работу терминала, посылая в терминал запрос EOF или «конец файла». После получения данного запроса, работа терминала завершается. Если у вас в терминале открыто активное ssh подключение, то комбинация Ctrl + D разъединит вас с удаленным хостом. Это сочетание клавиш является альтернативой команды exit.
Ctrl + Z
Сочетание Ctrl + Z пошлет текущему процессу запрос SIGSTP и приостановит его выполнение до востребования. Запустить приостановленный процесс можно с помощью следующей команды:
Посмотреть список приостановленных процессов вы можете, выполнив команду:
jobs
Сочетания клавиш для управления отображением
При помощи сочетаний клавиш, приведенных ниже, вы сможете легко управлять количеством информации, находящейся в окне терминала.
Ctrl + L
Это сочетание — альтернатива команде clear. После нажатия Ctrl + L терминал очистится от результатов выполнения предыдущих команд.
Ctrl + S
Сочетание клавиш Ctrl + S остановит вывод в терминал. Команда не прекратит выполняться, но вывод данных непосредственно в терминал будет приостановлен.
Ctrl + Q
Нажатие этой горячей клавиши снимет вывод в терминал с паузы, на которую вы его поставили нажатием клавиши Ctrl + S.
Заключение
В этой инструкции мы рассмотрели, как пользоваться горячими клавишами Linux, чтобы работа с терминалом была проще и быстрее.
Основные команды Linux: почти полное руководство с примерами
Структура и типы файловых систем в Linux
Зарегистрируйтесь в панели управления
И уже через пару минут сможете арендовать сервер, развернуть базы данных или обеспечить быструю доставку контента.
Читайте также:
Инструкция
Как создать веб-приложение на базе Telegram Mini Apps
Инструкция
Что делает команда chmod и как ее использовать в Linux
Инструкция
Как разработать gRCP-сервис на Go
Устранение чрезмерного масштабирования экрана при нормальном разрешении монитора (1920х1080): настройка DPI
При работе с мониторами высокого разрешения может некорректно выставляться значение разрешения экрана, что ведет к некорректному масштабированию экрана входа и/или рабочего стола (вход изображения за границы экрана). Разрешение экрана задается в точках на дюйм ( Dots Per Inch, DPI). При этом:
- Вывод команды xrandr показывает, что установлено достаточно низкое разрешение экрана (например, 640х480);
- В настройках монитора (Стартовая меню-панель Fly > Настройки > Настройки монитора) установлено низкое разрешение экрана;
- В файле /etc/X11/fly-dm/dpi указано высокое значение DPI (по умолчанию: 96, для планшетов может использоваться 220);
- В файле /etc/X11/fly-dm/fly-dmrc в параметре ServerArgsLocal указано высокое значение DPI (более 96, для планшетов может использоваться 220, для мобильных устройств — 120);
- В настройках шрифтов (Стартовая меню-панель Fly > Панель управления > Оформление Fly > Шрифты > Точек на дюйм) указано высокое значение DPI (более 96).
Для настройки DPI:
- При невозможности входа в графическую сессию выполнить следующие действия:
- Переключиться в консоль (Ctrl+Alt+F1 на физических машинах, или RCtrl+F1 на VirtualBox или через меню на Qemu);
- Выполнить вход в консольную сессию от имени пользователя-администратора;
ServerArgsLocal=-dpi 96
Если для dpi не указано никакое значение, то применяется стандартное значение 96.
sudo reboot
или перезапустить графический сервис fly-dm командой:
sudo systemctl restart fly-dmДобавление собственного разрешения экрана в оснастку «Разрешение» контекстного меню «Настройка монитора. «
Открыть терминал и выполнить следующие действия:
-
С помощью команды cvt проверить, доступно ли требуемое разрешение. Если разрешение доступно (в примере ниже — разрешение 1824 на 1024) команда выдаст строку настроек монитора для этого разрешения:
cvt 1824 1024
# 1824×1024 59.86 Hz (CVT) hsync: 63.63 kHz; pclk: 154.75 MHz
Modeline «1824x1024_60.00» 154.75 1824 1936 2128 2432 1024 1027 1037 1063 -hsync +vsyncДалее используются параметры настройки из второй строки, за исключением слова Modeline;
xrandr —newmode «1824x1024_60.00» 154.75 1824 1936 2128 2432 1024 1027 1037 1063 -hsync +vsync
xrandr
Screen 0: minimum 320 x 200, current 1920 x 992, maximum 8192 x 8192
Virtual-1 connected primary 1920×992+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1920×992 60.00*+
1920×1200 59.95
1920×1080 60.00
1600×1200 59.95
1680×1050 60.00
1400×1050 60.00
1280×1024 59.95
1440×900 59.99
1280×960 59.99
1280×854 59.95
1280×800 59.96
1280×720 59.97
1152×768 59.95
1024×768 59.95
800×600 59.96
848×480 59.94
720×480 59.94
640×480 59.94
Virtual-2 disconnected (normal left inverted right x axis y axis)
Virtual-3 disconnected (normal left inverted right x axis y axis)
Virtual-4 disconnected (normal left inverted right x axis y axis)
1824x1024_60.00 (0x3b4) 154.750MHz -HSync +VSync
h: width 1824 start 1936 end 2128 total 2432 skew 0 clock 63.63KHz
v: height 1024 start 1027 end 1037 total 1063 clock 59.86Hzxrandr —addmode HDMI-1 1824x1024_60.00

- При работе в графической сессии:
- Использовать в контекстном меню пункт «Настройка монитора. «;
- Убедиться, что новое разрешение появилось в оснастке «Разрешение»;
- Применить новое разрешение:
Настройки размера панели задач и размера значков рабочего стола
- Выбрать «Пуск» -> «Панель управления» -> «Рабочий стол» -> «Оформление Fly» -> «Темы» -> Размеры»;
- Отметить пункт «Автоматически» или снять отметку «Автоматически» и выбрать нужные параметры;
- Нажать кнопку «Применить».
Изменение размера иконок во вкладке «Панель управления» и изменение шрифта
Эта опция устанавливает значение DPI для шрифтов, что может быть полезно когда реальное DPI аппаратуры определено неверно или используются низкокачественные шрифты, отображающиеся некорректно или некачественно при использовании DPI, отличных от 96 или 120.
В обычных случаях использовать эту опцию не рекомендуется. Для выбора DPI лучше явно настраивать X-сервер, если возможно (например, через параметр DisplaySize в xorg.conf или добавляя параметр -dpi value в ServerLocalArgs= в файле /etc/X11/fly-dm/fly-dmrc).
Когда шрифт отрисовывается некорректно или некачественно с реальным DPI, лучше использовать другой шрифт или установить конфигурацию хитинга.
- Выбрать «Пуск» -> «Панель управления»-> «Рабочий стол» -> «Оформление Fly» -> «Шрифты» -> «Точек на дюйм»;
- Установить значение 96 или «По умолчанию» (или подобрать иное приемлемое значение);
- Нажать кнопку «Применить» ;
- «Перезапустить приложение»
Сохранение настроек графического режима после перезагрузки
Для сохранения настроек графического режима после перезагрузки:
-
Определить имеющиеся видеовыходы и видеорежим, который должен восстанавливаться после перезагрузки для каждого видеовыхода. Это можно сделать выполнив команду xrandr без параметров:
Пример вывода команды:
Screen 0: minimum 320 x 200, current 3840 x 1080, maximum 7680 x 7680 HDMI-1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 477mm x 268mm 1920x1080 60.00*+ 50.00 59.94 1920x1080i 60.00 50.00 59.94 1680x1050 59.88 1280x1024 75.02 60.02 1440x900 74.98 59.90 1280x720 60.00 50.00 59.94 1024x768 75.03 60.00 800x600 75.00 60.32 720x576 50.00 720x576i 50.00 720x480 60.00 59.94 720x480i 60.00 59.94 640x480 75.00 72.81 66.67 60.00 59.94 720x400 70.08HDMI-2 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 477mm x 268mm 1280x1024_75.00 74.90 + 1920x1080 60.00*+ 59.94 1680x1050 59.88 1280x1024 75.02 60.02 1440x900 74.98 59.90 1280x720 60.00 59.94 1024x768 75.03 60.00 800x600 75.00 60.32 720x480 60.00 59.94 640x480 75.00 72.81 66.67 60.00 59.94 720x400 70.08
В выводе показано наличие двух видеовыходов (HDMI-1 и HDMI-2), далее в примере используется видеовыход HDMI-1 и видеорежим 1920х1080;
cvt 1920 1080
пример вывода команды:
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
-
Для каждого видеорежима указать команду его регистрации:
xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
- «1920x1080_60.00» — имя видеорежима;
- 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync — строка параметров видеорежима, полученная с помощью команды cvt;
xrandr --addmode HDMI_1 "1920x1080_60.00" xrandr --output HDMI_1 --mode "1920x1080_60.00"
Горячие клавиши терминала Linux
В этой статье мы расскажем про основные горячие клавиши в терминале Linux.
Как открыть терминал в Линукс
В популярных дистрибутивах Linux есть специальные горячие клавиши для запуска эмулятора терминала. Эмулятор терминала — это специальная программа, которая является аналогом обычной консоли внутри графической оболочки. Чтобы открыть terminal Linux, используйте сочетание клавиш Ctrl+Alt+T.

Управление TTY-сессиями в терминале
С помощью сочетаний клавиш Ctrl+Alt+(F1-F6) вы можете открывать TTY-сессии и переключаться между ними. Одновременно можно запустить до 6 разных сессий консоли.

Чтобы вернуться в графический интерфейс, используйте комбинацию клавиш Ctrl+Alt+F7.
Управление окном терминала
Эти комбинации клавиш помогут вам управлять терминалом Linux:
- Ctrl+Shift+Q — закрывает активное окно терминала,
- Ctrl+Shift+N — открывает новое окно терминала, не закрывая предыдущее,
- Ctrl+Shift+T — открывает новую вкладку терминала,
- Ctrl+Shift+W — закрывает текущую вкладку терминала,
- Ctrl+Shift+D — превращает вкладку в отдельное окно,
- Alt+(номер вкладки) — перемещает на указанную вкладку терминала,
- Ctrl+PgUp — перемещает на предыдущую вкладку терминала,
- Ctrl+PgDown — перемещает на следующую вкладку терминала.
Управление отображением
С помощью этих комбинаций клавиш вы сможете управлять информацией, которая отображается в окне терминала:
- Ctrl+L — альтернатива команды clear . Это сочетание клавиш полностью очистит консоль от записей;
- Ctrl+S — остановка вывода в терминал. Команда продолжит выполняться, но данные не будут выводиться в терминал;
- Ctrl+Q — возвращает вывод данных, который был приостановлен клавишами Ctrl+S.
Управление курсором
Эти сочетания клавиш позволят вам быстро перемещаться по тексту и вводить команды:
- Ctrl+A или Home — для быстрого перехода в начало строки,
- Ctrl+E или End — для быстрого перехода в конец строки,
- Alt+B — перемещает курсор влево (назад) на одно слово,
- Ctrl+B — перемещает курсор влево (назад) на один символ,
- Alt+F — перемещает курсор вправо (вперед) на одно слово,
- Ctrl+F — перемещает курсор вправо (вперед) на один символ,
- Ctrl+XX — при первом вводе быстро переместит вас в начало строки. При повторном вводе курсор переместится на исходную позицию.
Управление вводом команд и исправление опечаток
- Tab — одна из наиболее полезных и часто используемых горячих клавиш. Она помогает дополнить команду, имя файла или каталога. Чтобы воспользоваться функционалом, начните вводить текст и нажмите Tab. Если у текста несколько вариантов продолжения, то вы сможете просмотреть доступные варианты. Для этого нужно дважды нажать Tab;
- Ctrl+Shift+- — это сочетание клавиш удаляет последнюю команду, введенную в терминал;
- Ctrl+D или Delete — удаляет один символ после курсора;
- Alt+D — позволяет удалить все символы после курсора в текущей строке;
- Alt+Backspace — удаляет слово, которое стоит перед курсором;
- Ctrl+H или Backspace — удаляет символ перед курсором;
- Ctrl+T — меняет местами расположенные рядом символы;
- Alt+T — меняет местами расположенные рядом слова.
Работа с буфером обмена
В терминале есть быстрые клавиши для работы с буфером обмена, с помощью которых можно вырезать и вставлять текст.
- Ctrl+W — вырезает слово перед курсором и копирует его в буфер обмена,
- Ctrl+U — вырезает и копирует в буфер обмена строку, набранную перед курсором,
- Ctrl+K — вырезает и копирует в буфер обмена строку, набранную после курсора,
- Shift+Insert — вставляет в терминал текст из буфера обмена,
- Ctrl+Y — вставляет последний добавленный в буфер обмена текст.
Форматирование текста
При помощи горячих клавиш вы можете быстро изменять регистр символов в терминале.
- Alt+U — все символы справа от курсора до конца слова изменят регистр на верхний,
- Alt+L — все символы справа от курсора до конца слова изменят регистр на нижний,
- Alt+C — символ, который находится под курсором, изменит регистр с нижнего на верхний. Курсор переместится в конец слова.
Управление историей введенных команд
Командная строка хранит историю команд, выполненных пользователем. Посмотреть ее можно при помощи команды:
history
Но использовать эту команду для быстрого поиска и выполнения команд в терминале не очень удобно. Гораздо удобнее использовать сочетания клавиш:
- Ctrl+P или ↑ — показывает предыдущую выполненную команду из истории. Можно использовать неограниченное количество раз — каждый раз вы будете перемещаться к более ранней команде;
- Ctrl+N или ↓ — показывает следующую выполненную команду из истории. Можно использовать неограниченное количество раз — каждый раз вы будете перемещаться к более поздней команде;
- Alt+R — если команда была найдена через историю и отредактирована, но вы хотите отменить изменения, используйте эту комбинацию клавиш. Тогда команда вернется к первоначальному виду;
- Ctrl+R — открывает строку поиска, с помощью которой можно найти в истории ранее запущенную команду и выполнить ее;
- Ctrl+O — выполняет найденную через Ctrl+R команду;
- Ctrl+G — завершает работу с режимом поиска по истории без выполнения найденной команды.
Управление процессами
С помощью этих комбинаций клавиш вы можете управлять запущенными в терминале процессами:
- Ctrl+C — завершает процесс, который на данный момент выполняется в терминале. Эта комбинация клавиш моментально отправляет программе сигнал SIGINT, который принудительно завершает текущий процесс;
- Ctrl+Z — посылает текущему процессу сигнал SIGSTP и приостанавливает его выполнение. Чтобы позже запустить приостановленный процесс, используйте команду:
Чтобы посмотреть список приостановленных процессов, выполните команду:
jobs
- Ctrl+D — завершает работу терминала. В терминал отправляется запрос EOF (конец файла). После получения запроса работа терминала завершается. Вместо этого сочетания клавиш можно использовать команду exit .
Теперь вы знаете, как включить горячие клавиши в Linux.
Помогла ли вам статья?
Спасибо за оценку. Рады помочь