Лучшие сочетания клавиш для Bash (он же терминал Linux и macOS)

Bash — оболочка командной строки по умолчанию в большинстве дистрибутивов Linux, от Ubuntu и Debian до Red Hat и Fedora. Bash также является оболочкой по умолчанию, включенной в macOS, и вы можете установить среду bash на основе Linux в Windows 10 .

Командная строка Ubuntu

Работать в Ubuntu и других Linux-подобных операционных системах можно с помощью двух разных интерфейсов — графического интерфейса и командной строки.

Графический интерфейс пользователя (GUI — Graphical User Interface) — это привычное многим управление с помощью рабочего стола, графических окон, меню и кнопок. Пользователь может щелчками мыши открывать программы, копировать и удалять файлы, создавать папки и т. д.

Другой интерфейс — это командная строка (CLI — Command Line Interface). Пользователь вводит в неё определённые команды (набор букв, цифр и символов) с помощью клавиатуры, и компьютер запускает соответствующие процессы.

Открыть командную строку в Линукс-системах можно через консоль или терминал. В Ubuntu консоль запускается при загрузке системы. Терминал — это тоже консоль, но уже в графической оболочке. Его можно запустить, набрав слово Терминал в поисковой строке ОС, или через комбинацию клавиш Ctrl+Alt+T.

Консоль и терминал обрабатывают команды с помощью программной оболочки: в Ubuntu это командный интерпретатор bash. Он распознаёт команды, которые пользователь ввёл в командной строке, и выполняет их.

Ниже рассмотрим, из чего состоит команда, а также приведём используемый в bash список команд.

Перемещение курсора

Используйте следующие комбинации клавиш, чтобы быстро перемещать курсор вокруг текущей строки при вводе команды.

  • Ctrl + A или Home : перейти к началу строки.
  • Ctrl + E или End : перейти к концу строки.
  • Alt + B : перейти влево (назад) на одно слово.
  • Ctrl + B : перейти влево (назад) на один символ.
  • Alt + F : перейти вправо (вперед) на одно слово.
  • Ctrl + F : перейти вправо (вперед) на один символ.
  • Ctrl + XX : перемещение между началом строки и текущей позицией курсора. Это позволяет вам нажать Ctrl + XX, чтобы вернуться к началу строки, что-то изменить, а затем нажать Ctrl + XX, чтобы вернуться в исходное положение курсора. Чтобы использовать этот ярлык, удерживайте клавишу Ctrl и дважды нажмите клавишу X.

Как открыть терминал в Линукс?

Терминал это текстовая среда ввода и вывода. Используется для управления системными процессами. Представляет собой вид файла устройства, которые могут выполнять дополнительные команды.

Командная строка

В текстовой среде можно быстро:

  1. устанавливать и удалять программы;
  2. менять настройки сети;
  3. менять права доступа;
  4. включать, отключать графический интерфейс;
  5. выключать, перезагружать компьютер;
  6. устанавливать драйвера;
  7. создавать пользователей;
  8. обновлять ядро и все компоненты системы;
  9. устанавливать дополнительные меры защиты от взлома;
  10. настраивать сеть, днс, ip-адрес, маску;
  11. запускать программы, скрипты по расписанию. Планировщик заданий cron;
  12. перезагружать, выключать компьютер;
  13. и многое другое.
Как открыть терминал в Линукс?

Что такое shell?

Shell, если говорить визуально это черное окно по середине. В моем случае оно белое.

Shell — это оболочка, программа, которая принимает различные команды от пользователя.

Графическая оболочка помогает пользователю облегчить восприятия линукс, однако иногда требуется пользователю запустить командную строку. В этом случае и возникает вопрос. Как же ее открыть?

Читайте также:  Mandrakelinux 10.1. Справочное руководство. Ссылки

Запуск

Есть несколько способов запустить terminal:

  • самый простой. Необходимо нажать вместе горячие клавиши «CTRL + ALT+ T». Данный способ работает на многих дистрибутивах. Debian, Ubunty…
  • через графический интерфейс операционной системы. В разделе «Администрирование» —> «терминал». В Ubuntu «Приложения» -> Системные утилиты ->»Терминал». В Дебиане на английском языке «Menu» -> «Administaration» -> «terminal». 
  • Нажать ALt + F2 и ввести в окне «gnome-terminal».
Как открыть терминал в Линукс?

Вопросы и ответы

Как вызвать командную строку с правами root?

Есть два основных варианта:

  1. В строке ввода набрать команду «sudo bash» и ввести пароль.
  2. Ввести «su -«.

Как выйти из терминала Линукс?

  1. Если в графическом окружении, то вводим «exit».
  2. Eсли без графики, то нажимаем горячие клавиши alt + ctrl + f7.

Терминал и консоль в чем разница?

Как открыть терминал в Линукс?

Чтобы понять отличия, необходимо различить эти два понятия.

Terminal, как говорилось выше это текстовая среда ввода и вывода. Консоль — физический терминал.

Эти два термина очень связаны.

Konsole это работа с самим устройством физически. Terminal — удаленно.

Например в графической среде мы открывали эмулятор terminal, он давал нам доступ в «консоль».

Как открыть консоль?

Чтобы открыть консоль необходимо в командной строке ввести:

Как открыть терминал в Линукс?
  1. в ubuntu, debian — «gnome-terminal»;
  2. в Linux Mandriva -«konsole».

Важно! Активация текстовой консоли отключит графическую оболочку, однако запущенные процессы останутся работать.

В итоге можно сказать, что запустить terminal в Линуксе не должно вызвать затруднений. Другое дело уже вводить команды, устанавливать и удалять программы. Основные команды для новичков описаны в другой статье -komandy

Информация о сети

Рассмотрим 3 типа IP-адресов, с которыми приходится сталкиваться чаще всего:

  1. Внешний IP-адрес — адрес нашего устройства в глобальной сети.
  2. Локальной IP-адрес — адрес в локальной сети устройств.
  3. Внутренний IP-адрес — используется в основном утилитами для взаимодействия между собой. Всегда 127.0.0.1 или localhost

Разберем способы узнать внешний и локальный IP-адрес.

Как узнать внешний IP-адрес

В большинстве случаев, чтобы узнать свой внешний IP-адрес требуется сторонний сервис, который скажет с какого IP вы отправили ему запрос.

Как правило, эти сервисы представляют из себя обычные веб-страницы, вот их список:

Разницы в этих сайтах особо нет, выберите тот, который именно вам отвечает быстрее всего.

Их можно открывать через браузер, но это не всегда удобно, поэтому в примерах мы будем рассматривать как обращаться к ним прямо из терминала.

Способ 1: wget

Утилита wget позволяет нам скачивать файлы и получать информацию с веб-страниц. Для начала проверим, установлена ли она, введите в терминал wget и если получите в ответ bash: wget: command not found, значит самое время ее установить

sudo apt install wget

Или вместо apt использовать yum, что зависит от вашего дистрибутива:

sudo yum install wget

Итак, утилита wget установлена, теперь попробуем узнать свой внешний IP-адрес. Для этого введем в терминал команду wget с опциями -qO, далее минус -, а затем уже один из сайтов, список которых выше. В целом шаблон команды такой:

wget -qO — адрес_веб_сайта

Например внешний IP-адрес можно узнать вот так:

wget -qO —

Или вот так:

wget -qO —

И так с любым сайтом из этого списка. Вот так это выглядит в терминале:

$ wget -qO — $ wget -qO — Способ 2: curl (проще)

Второй способ — использовать curl. Сама по себе утилита более универсальна, чем wget и заслуживает не одну отдельную статью, но в данном примере мы разберем как с ее помощью узнать свой внешний IP-адрес.

Для начала также проверим, установлена ли она, введите в терминал curl и если получите в ответ bash: curl: command not found, значит самое время ее установить

sudo apt install curl

Или вместо apt использовать yum, что зависит от вашего дистрибутива:

sudo yum install curl

Итак, утилита curl установлена, теперь попробуем узнать свой внешний IP-адрес. C «курлом» это намного проще, нужно лишь ввести curl и один из сайтов, список которых выше. В целом шаблон команды такой:

curl адрес_веб_сайта

Пробуем:

curl

И с другим сайтом:

curl

Вид из терминала:

$ curl $ curl Как узнать локальный IP-адрес

Локальный IP-адрес узнается при помощи разных утилит, мы рассмотрим наиболее популярный и актуальный инструмент для этих задач на сегодня — инструмент ip. Чтобы увидеть все сетевые интерфейсы, достаточно ввести:

ip addr show

В примере используется Debian 9 и вывод там такой:

$ ip addr show 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 00:16:3e:3d:a0:09 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet brd scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::216:3eff:fe3d:a009/64 scope link valid_lft forever preferred_lft forever

В выводе отображается очень много информации, в которой легко запутаться. Мы видим 2 интерфейса, один lo (внутренний 127.0.0.1) и проводной eth0, с локальным IP-адресом Как вы уже возможно поняли, сам IP-адрес отображается после inet.

Стоит перечислить самые распространенные интерфейсы, чтобы можно было легко ориентироваться, какой адрес кому пренадлежит.

  • lo — внутренний интерфейс, всегда 127.0.0.1 или localhost
  • eth — проводной интерфейс
  • wlan — Wi-Fi-интерфейс
  • ppp — Point-to-Point Protocol, часто используется для VPN

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Управления файлами и каталогами

(List). С помощью этой утилиты можно посмотреть, что содержится в папке. Без указания конкретного пути показывает текущий каталог. Если путь указан, то переход совершиться в конечный его каталог. Чтобы вывести каталог в виде списка с дополнительной поясняющей информацией введите:

Для показа скрытых файлов:

Команда для просмотра содержимого директорий. Более современная альтернатива этой утилиты ls -l может работать не во всех дистрибутивах Linux.

(Concatenate / Catenate). Команда двойного назначения. Показывает на экране что содержит файл или стандартный ввод. Также к «склеивает» несколько переданных подряд файлов в один. Если нужно посмотреть содержимое одного файла, вводим:

Если нужно узнать содержимое нескольких файлов подряд:

Для «склейки» файлов, вводим:

Чтобы задать нужное количество строк в показанном:

(Change Directory). Меняет текущий каталог, в котором работает терминал на указанный. Когда терминал запущен, он использует по умолчанию корневой каталог (root), вернуться в который можно, набрав:

Чтобы указать другую папку для работы с файлами, нужно ввести:

Чтобы подняться по древу каталогов на уровень вверх набираем:

Чтобы вернуться к предыдущей директории:

Двойной амперсанд – не полноценная команда, а управляющий оператор. Он предназначен для выполнения последовательного ряда команд. Чтобы терминал выполнил команды одну за другой, нужно разделить их следующим образом:

Читайте также:  Программы родительского контроля на компьютере

Число команд в такой последовательности не ограничено.

mkdir

(Make Directory). Создаёт новую директорию. Можно также создать полную структуру подкаталогов, если ввести сочетание:

(Copy). Утилита, позволяющая скопировать файл или каталог. Копирование файлов и каталогов. Чтобы копирование прошло рекурсивно, т. е. включало все поддиректории и файлы в них, надо добавить к команде:

А если надо дополнить рекурсивное копирование сохранением всех атрибутов, сведения о владельце и временный штамп, добавляем «архивную» опцию -a, чтобы получилось:

(Move). Эта команда в Linux одновременно отвечает за перемещение и переименование файла или каталога. При переименовании файл перемещается в ту же папку, но уже названную по-новому.

(Remove). Отвечает за удаление папок и файлов. Использовать оператор rm следует крайне осторожно. В Linux файлы удаляются не в корзину, откуда их можно восстановить, а стираются безвозвратно. Для рекурсивного удаления используйте сочетание:

(Link). Создаёт программные ссылки на файлы. По функционалу это похоже на ярлыки в Windows.

Типы ссылок Linux

chmod

(Change Mode). Изменяет разрешения доступа к файлу. Под доступом имеется в виду классическая триада: чтение r, изменение w и запуск x. Общий вид:

При этом, «разрешения» могут быть указаны буквенным, символьным (rwx) или цифровым кодом. Кроме того, эта переменная может включать информацию о владельце ( u / g / o / a ) и операции с правами ( + / – / = ).

Популярные комбинации разрешений для команды chmod

Вид разрешения Символьный код Числовой код
Нет допуска
Чтение r– 4
Изменение -w- 2
Запуск –x 1
Запуск + Изменение -wx 3
Чтение + Запуск r-x 5
Чтение + Изменение rw- 6
Запуск + Изменение + Запуск rwx 7

chown

(Change Owner). Команда для смены владельца файла и его группы. Для смены владельца используем синтаксис:

Для смены группы файла:

Если надо поменять оба параметра:

Команду можно применить только с правами суперпользователя. Чтобы изменить владельца/группу рекурсивно добавляем:

chgrp

(Change Group). Меняет группу файла. В отличие от chown, эта команда позволяет менять группы, только тем, кто в ней состоит.

(Dataset Definition). Позволяет скопировать данные на двоичном уровне из одного места в другое. Данные могут быть любого размера — от образа CD/ DVD до целого жёсткого диска. Утилита перемещает блоки данных из указанного источника — if имя_файла в пункт назначения — of имя_файла , который может быть устройством или файлом. Для копирования нескольких файлов применяется утилита cp. С данной командой надо обращаться крайне осторожно, о чём свидетельствует её альтернативное название «Data Destroyer». Ошибка в вводе данных может легко стать причиной потери данных на диске.

(Disk Free). Даёт полную информацию о свободном пространстве на диске. Анализ включает перечисление файловых систем смонтированных разделов, обзор занятого и свободного места на диске. Для более удобного вывода информации, лучше применять сочетание:

(Disk Usage). Позволяет определить размер файла или каталога. Применяется в вместе с дополнительными операторами:

  • df –h — представляет данные о размере в удобном для восприятия формате;
  • df –s — даёт необходимый минимум данных;
  • df –d — задаёт глубину рекурсии для каталогов.

mount / umount

Команды Linux для монтажа и отключения любых файловых систем — от CD-диска и USB-флешки до ядер ОС. Тип файловой системы обычно определяется командой самостоятельно, путём чтения суперблока. Опция используется только с правами суперпользователя.