Linux настроить командную строку

Содержание
  1. HackWare.ru
  2. Этичный хакинг и тестирование на проникновение, информационная безопасность
  3. Азы работы в командной строке Linux (часть 1)
  4. Командная строка Linux
  5. TAB для автодополнения
  6. ENTER для запуска выполнения команд
  7. CTRL + c для прерывания выполнения программы
  8. ↑ (курсорная клавиша вверх) для просмотра истории команд
  9. Азы файловой системы Linux
  10. Базовые команды Linux
  11. pwd для показа текущей рабочей директории
  12. mkdir для создания новых директорий
  13. ls для просмотра содержимого каталогов
  14. cd для перехода по папкам (смены текущей рабочей директории)
  15. cp для копирования файлов
  16. mv для переименования и перемещения файлов.
  17. rm для удаления файлов и папок
  18. Как копировать текст в командной строке и как вставлять в командную строку Linux
  19. Ошибка «команда не найдена»
  20. Ещё несколько полезных сочетаний клавиш для командной строки Linux
  21. Как изменить приглашение командной оболочки bash в Linux?
  22. Что такое приглашение командной оболочки?
  23. Стейтменты приглашения bash
  24. Изменение приглашения bash
  25. Изменение приглашения bash на постоянку
  26. Временное изменение приглашения bash
  27. Популярные пользовательские параметры приглашения bash
  28. Отображение имени пользователя и имени хоста
  29. Добавление специальных символов
  30. Отображение имени пользователя, имени оболочки и версии оболочки
  31. Добавление даты и времени в приглашение bash
  32. Убираем всю информацию из приглашения bash
  33. Отделение обычных пользователей от root
  34. Дополнительные параметры оболочки
  35. Добавление в приглашение bash выполнения команды
  36. Как изменить цвет приглашения bash?
  37. Откат изменений к настройкам по умолчанию
  38. Заключение

HackWare.ru

Этичный хакинг и тестирование на проникновение, информационная безопасность

Азы работы в командной строке Linux (часть 1)

Возникло желание написать мануал о консоли, базовых командах и азах файловой системы Linux. Когда я начинал своё знакомство с Linux именно такой инструкции мне не хватало. Надеюсь, абсолютным новичкам, которых пугают консольные команды, она поможет «влиться» в число умеющих использовать командную строку Linux.

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

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

добавлен в избранные команды,

доступен в контекстном меню при клике правой кнопкой мыши в области рабочего стола.

Либо вы для вызова эмулятора терминала вы можете воспользоваться сочетанием клавиш CTRL + ALT + t.

В приглашении командной строки отображается имя пользователя и имя хоста. Перед областью ввода команд может быть символ решётки (#) или символ доллара ($). Символ доллара означает, что вы работаете под обычным пользователем, а символ решётки – что под суперпользователем (root).

На скриншоте видно, что я открыл консоль как обычный пользователь (символ $), а затем вошёл как root (символ сменился на #).

В некоторых инструкциях перед командами пишут $ или # и новички, пытаясь выполнить команды копированием-вставкой, получают разнообразные ошибки. Если перед командной вы видите $ или #, то их не нужно печатать – они написаны только для информирования вас о том, нужны ли дополнительные привилегии для выполнения данной команды.

TAB для автодополнения

При вводе команды или имени файла, обязательно используйте клавишу TAB – она автоматически допишет для вас команду или имя файла. Если при нажатии на TAB ничего не происходит, то быстро нажмите TAB два раза, чтобы увидеть все доступные варианты. Если варианты не выводятся, то это верный признак того, что: 1) вы неправильно начали вводить имя команды, 2) программа, которую вы намереваетесь запустить, ещё не установлена.

ENTER для запуска выполнения команд

Набрав команду, нажмите ENTER и после этого она запустится.

CTRL + c для прерывания выполнения программы

Если вы хотите оборвать выполнение команды, то используйте для этого сочетание клавиш CTRL + c. Если вы ввели команду, но передумали её запускать, то вместо удаления строки, можете также нажать CTRL + c.

(курсорная клавиша вверх) для просмотра истории команд

Если вы хотите повторить выполнение команды, то клавишами и вы можете пролистать историю ранее введённых команд, выбрать любую из них для повторного выполнения, отредактировать перед запуском.

Азы файловой системы Linux

Если нужно прочитать какие-то данные или сохранить информацию в файл из консоли, нужно уметь указывать путь до файла. В файловой система Linux нет такого понятия как буквы дисков. Там используется понятие «корень». Обозначается корень символом /

После корня указываются папки (в Linux они называются директориями) и файлы. Одни папки могут быть вложены в другие – точно также как в Windows. Вложенные папки и файлы разделяются символом / (точно таким же как корень).

Пример указания пути до файла:

Эта запись означает, что файл book.txt находится в папке mial, а папка mial находится в папке home.

Базовые команды Linux

pwd для показа текущей рабочей директории

Откройте консоль и введите туда

У меня вывелось:

Здесь / (первый слеш) – это корень, home – это название папки (директории), далее / (второй слеш) – отделяет название вложенной папки, mial – название второй вложенной папки.

Читайте также:  Как самостоятельно активировать windows 10

Команда pwd показывает «текущую рабочую директорию». Текущую рабочую директорию нужно знать при указании относительных путей до файлов и папок, также некоторые программы сохраняют результаты своего выполнения в текущую директорию.

mkdir для создания новых директорий

После mkdir укажите название папки, которую вы хотите создать. Если вы укажите относительный путь, например, так:

То будет создана новая папка test1 в текущей рабочей директории, т.е. в моём случае путь до неё будет

Также можно указать абсолютный путь до папки:

ls для просмотра содержимого каталогов

Команда ls используется для вывода списка файлов и папок текущей рабочей директории:

Теперь мы можем убедиться, что папки test1 и test2 действительно были созданы.

Чтобы список выглядел лучше, можно использовать команду ls с опцией -l

После команды и опций можно указать путь до папки, содержимое которой вы хотим посмотреть. Чтобы увидеть содержимое директории /var/log нужно ввести:

Для просмотра содержимого корневой директории:

cd для перехода по папкам (смены текущей рабочей директории)

Для перехода по папкам используется команда cd после которой пишется директория, в которую вы хотите перейти. Можно указывать относительный путь или абсолютный:

Символ . (одна точка) означает текущую директорию, а символ .. (две точки) означаете родительскую директорию. Следовательно, для перехода на один уровень вверх нужно набрать

cp для копирования файлов

Если вам нужно скопировать файл в другую директорию, то используется команда cp. После неё указывается файл, который нужно скопировать и затем через пробел директория, куда вы хотите поместить файл, например:

Этой командой я скопировал файл test.sh в директорию test1. Проверим

mv для переименования и перемещения файлов.

После команды mv указывается имя файла, который вы хотите переименовать или переместить. Затем через пробел пишется директория, куда вы хотите переместить файл (тогда файл будет перемещён в неё с исходным именем), или директория и новое имя файла (тогда файл будет перемещён и переименован), или только новое имя файла (тогда файл будет переименован).

Файл test.sh из каталога test1 я переместил в каталог test2:

Файл test.sh в каталоге test2 я переименовал в test2.sh:

Файл test2.sh в каталоге test2 я переместил в каталог test1 и присвоил ему имя new.txt:

rm для удаления файлов и папок

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

Для понимания иерархии файловой системы рекомендуется ещё одна статья для новичков «Структура директорий Linux. Важные файлы Linux».

Как копировать текст в командной строке и как вставлять в командную строку Linux

Привычные сочетания клавиш Ctrl+c и Ctrl+v в терминале имеют другое действие. Для копирования нужно использовать Ctrl+Insert, а для вставки Shift+Insert.

Ошибка «команда не найдена»

Причиной данной ошибки могут быть:

  • неправильно набрано имя команды
  • программа не установлена
  • данную команду может выполнять только root

Ещё несколько полезных сочетаний клавиш для командной строки Linux

  • Ctrl+l для очистки экрана
  • Ctrl+a для перехода в начало введённой команды
  • Ctrl+e для перехода в конец введённой команды
  • Ctrl+u для удаления всего, что стоит до курсора
  • Ctrl+k для удаления всего, что стоит после курсора
  • Ctrl+d для завершения текущего сеанса, закрытия консоли

Одна из самых часто используемых:

  • Ctrl+R: Поиск по ранее запущенным командам, начните писать искомую и вам будут предлагаться самые подходящие варианты. Для запуска нажмите ENTER.

Имеется функционал копи-пастинга:

  • Ctrl+W: Вырезать слово перед курсором, добавить его в буфер обмена.
  • Ctrl+K: Вырезать часть строки после курсора, добавить её в буфер обмена.
  • Ctrl+U: Вырезать часть строки перед курсором, добавить её в буфер обмена.
  • Ctrl+Y: Вставить из буфера обмена последнее, что вы вырезали.

Источник

Как изменить приглашение командной оболочки bash в Linux?

Обновл. 5 Май 2021 |

В Linux существенная часть работы выполняется из командной оболочки. Одной из самых популярных командных оболочек является bash (сокр. от «Bourne-Again shell»). bash интерпретирует ваши команды и передает их для выполнения операционной системе.

Что такое приглашение командной оболочки?

Всякий раз, когда мы открываем окно терминала, мы видим приглашение командной оболочки:

имя_пользователя — имя пользователя, который в данный момент вошел в систему;

имя_хоста — имя хоста системы;

(тильда) — означает, что в данный момент мы находимся в домашнем каталоге /home/ ;

$ — означает, что текущий пользователь является обычным пользователем (а знак решетки # дает понять, что текущим пользователем является пользователь root).

Стейтменты приглашения bash

bash содержит 4 различных стейтменты приглашения (PS от англ. «Prompt Statement»):

Читайте также:  Открыть порты windows 10 powershell

PS1 — это основное приглашение, которое отображается перед каждой командой; по этой причине оно и модифицируется чаще всего.

PS2 — отображается в тех случаях, когда команде требуются дополнительные данные для ввода (например, при использовании многострочных команд).

PS3 — отображается при работе со встроенной в оболочку командой интерактивного меню select .

PS4 — используется для запуска сценария оболочки в режиме отладки.

До сих пор мы работали только с PS1. В большинстве случаев вы будете работать только с PS1 и, возможно, с PS2.

Чтобы увидеть текущее значение PS1, введите следующее:

В зависимости от системы терминал вернет что-то вроде этого:

Теперь посмотрим, что у нас содержится в PS2:

Как видите, здесь у нас только одна угловая скобка:

Повторение той же команды для PS3 вообще вернет полностью пустую строку.

Для PS4 вы увидите знак + .

Изменение приглашения bash

Поведение bash задается через соответствующий файл конфигурации .bashrc, расположенный в домашнем каталоге пользователя. Если имя вашего пользователя, например, diego, то путь к файлу будет следующим:

Или более краткий вариант:

Прежде чем вносить какие-либо изменения в него, настоятельно рекомендуется создать резервную копию данного файла. Для этого откройте окно терминала и введите следующее:

Примечание: Расширение .bak (от англ. «backup») сообщает нам, что файл является резервной копией.

Изменение приглашения bash на постоянку

Откройте для редактирования файл конфигурации bash:

В этом файле вы должны увидеть несколько различных настроек. Некоторые из них в данный момент неактивны и представляют собой обычные комментарии — строки синего или сине-зеленого цвета, отмеченные знаком # . Строки белого цвета используются оболочкой для настройки её поведения.

Прокрутите страницу до конца файла конфигурации и добавьте следующую строку:

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

Сохраните файл (сочетание клавиш Ctrl+O, и затем Enter) и выйдите из редактора (Ctrl+X).

Обновите bash, чтобы применить изменения:

В результате наших манипуляций приглашение оболочки должно измениться на следующее:

Временное изменение приглашения bash

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

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

В результате, приглашение оболочки должно немедленно принять вот такую форму:

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

Популярные пользовательские параметры приглашения bash

Вы можете использовать следующие параметры с любым методом изменения приглашения bash: временным (с помощью команды export ) или постоянным (отредактировав файл .bashrc).

Отображение имени пользователя и имени хоста

Используйте опцию -H для отображения полного имени хоста:

Вы должны увидеть имя хоста в приглашении:

Добавление специальных символов

Вы можете добавить в приглашение оболочки специальные символы, расположив их вместе с уже знакомыми вам опциями:

В результате будет отображаться следующее:

Примечание: Я рекомендуем вам сделать так, чтобы приглашение оканчивалось специальным символом или пробелом: двоеточие, угловая скобка или символ пробела непосредственно перед последней кавычкой. Это поможет пользователям визуально отделить приглашение оболочки от вводимой ими в данный момент команды.

Отображение имени пользователя, имени оболочки и версии оболочки

Введите следующую команду, чтобы отобразить имя пользователя, название оболочки ( s от англ. «shell») и её версию ( v от англ. «version»):

Приглашение должно измениться на следующее:

Добавление даты и времени в приглашение bash

Используйте следующие параметры для отображения различных форматов даты и времени:

\d — отображает текущую дату в формате [день_недели]/[месяц]/[число]:

export PS1=»\u@\H>\d «

\t — отображает текущее время в 24-часовом формате:

export PS1=»\u@\H>\t «

\T — отображает текущее время в 12-часовом формате:

export PS1=»\u@\H>\T «

\A — отображает текущее время в 24-часовом формате, но без секунд:

export PS1=»\u@\H>\A «

Примечание: Параметры \u@\H , предшествующие параметру даты и времени, добавляют имя пользователя ( u от англ. «username») и имя хоста ( H от англ. «Hostname»).

Убираем всю информацию из приглашения bash

Используйте эту возможность, чтобы скрыть отображение имен пользователей или имени хоста в приглашении:

Вы должны увидеть следующее:

Отделение обычных пользователей от root

В стандартном приглашении оболочки знак $ указывает на обычного пользователя. Если вы входите в систему как пользователь root, то отображается знак # .

Используйте символ $ , чтобы указать, что текущий пользователь не является пользователем root:

Дополнительные параметры оболочки

Ниже представлен список большинства параметров, которые вы можете использовать для настройки приглашения bash. Стоит оговориться, что не все из них могут поддерживаться конкретным Linux-дистрибутивом:

Читайте также:  Removing apps from windows store

\a — звуковой сигнал;

\d — дата (день/месяц/число);

\D <формат>— форматированный вывод текущего времени;

\e — символ escape-последовательности;

\h — имя хоста (короткое, до первой точки);

\H — полное имя хоста (доменное имя);

\j — количество задач, обрабатываемых оболочкой в данный момент;

\l — название терминала;

\n — переход на новую строку;

\r — возврат каретки на начало строки;

\s — название оболочки;

\t — время в 24-часовом формате (час:минута:секунда);

\@ — время в 12-часовом формате (AM/PM);

\A — время в 24-часовом формате без секунд;

\u — текущее имя пользователя;

\V — дополнительная информация о версии bash (номер релиза, патча);

\w — текущий рабочий каталог;

\W — базовое имя рабочего каталога;

\! — отображает номер, под которым команда будет занесена в историю команд bash;

\# — отображает номер команды в текущем сеансе без привязки к истории. При запуске нового терминала, нумерация начинается с единицы;

\$ — если пользователем является root, то используется символ # , в противном случае — символ $ ;

\\ — обратная косая черта;

\[ — начало последовательности непечатаемых символов (полезно, если вы хотите изменить цвет, добавить команду или набор инструкций в приглашение);

\] — конец последовательности непечатаемых символов.

Добавление в приглашение bash выполнения команды

Есть еще один трюк, с которым полезно ознакомиться: вы можете добавить в приглашение командной оболочки вывод любой команды. Всякий раз, когда появляется приглашение оболочки, bash запускает команду и отображает её вывод. Для этого просто добавьте имя любой команды, которую вы хотите запустить, между двумя символами машинописного обратного апострофа (кнопка Ё на английской раскладке клавиатуры):

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

Как изменить цвет приглашения bash?

Параметры цвета строки приглашения задаются в виде следующей последовательности — \e[X;Y;Zm , где:

\e[ — часть с escape-символом, обозначающая начало изменения цвета;

X — код атрибута текста:

0 — нормальный;

1 — жирный (яркий);

2 — тусклый;

4 — подчеркнутый;

Y — цветовой код текста:

30 — черный;

31 — красный;

32 — зеленый;

33 — коричневый;

34 — синий;

35 — фиолетовый;

36 — голубой;

37 — светло-серый.

Z — цветовой код фона:

40 — черный;

41 — красный;

42 — зеленый;

43 — коричневый;

44 — синий;

45 — фиолетовый;

46 — голубой;

47 — светло-серый.

m — символ, указывающий на конец блока с цветовым кодом.

Примечание: Для того, чтобы терминал корректно выполнил обработку нашей последовательности, необходимо её поместить между символами \[ и \] , т.е. \e[X;Y;Zm станет \[\e[X;Y;Zm\] .

Рассмотрим пример, который временно изменяет текст и цвет строки приглашения на зеленый:

\[ — сочетание символов, обозначающее начало блока изменения атрибутов текста;

\e[ — сочетание символов, обозначающее начало блока цветового кода;

0;32 — цветовой код ( 0 — обычный текст, 32 — зеленый цвет);

m — символ, указывающий на конец блока с цветовым кодом;

\] — сочетание символов, обозначающее конец блока изменения атрибутов текста;

[\u@\h \W]\$ — код, задающий стандартный вид приглашения оболочки;

\[ — сочетание символов, обозначающее начало блока изменения атрибутов текста;

\e[ — сочетание символов, обозначающее начало блока цветового кода;

0 — цветовой код ( 0 — обычный текст белого цвета)

m — символ, указывающий на конец блока с цветовым кодом;

\] — сочетание символов, указывающее на конец блока с цветовым кодом.

В результате мы получим следующее:

Кроме того, если вы скомбинируете опцию яркости с цветовым кодом, то получите более светлую версию заданного цвета. Например, если вы используете цветовой код 1;32 , то получите светло-зеленый цвет вместо обычного зеленого. Если вы используете 1;33 , то получите желтый цвет вместо коричневого.

Откат изменений к настройкам по умолчанию

Есть два способа сбросить вышепредставленные изменения. Для временных изменений (введенных с помощью команды export PS1=»» ) достаточно просто выйти из системы.

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

Способ №1: Закомментируйте свои изменения в файле, добавив в начале каждой строки символ # .

Способ №2: Восстановите настройки из резервной копии, введя:

Заключение

Вышеприведенные примеры являются лишь небольшой демонстрацией того, каким образом настраивается внешний вид приглашения оболочки. Не стесняйтесь экспериментировать с различными специальными символами, командами и параметрами, чтобы создать свой вид идеальной командной строки.

Поделиться в социальных сетях:

Источник

Оцените статью