Linux приветствие в консоли

Настройка внешнего вида login’a в консоли GNU/Linux

Если не установлена графическая оболочка, то после загрузки дистрибутива GNU/Linux встречает приветствие консоли с просьбой ввести имя пользователя и пароль. Запускается весь этот процесс обычно программкой /bin/agetty. Вывод работы которой можно разделить на три части:

  1. Различная информация, которую оставили создатели дистрибутива. Её пользователь видит перед входом в систему. К примеру, в Debian это достаточно большое приветствие, содержащее полезные и не очень вещи.
  2. Собственно строка вида:
    имя_хоста login: Где необходимо ввести имя пользователя и пароль. В данном случае запускается утилита /bin/login.
  3. Различные сообщения системы после входа пользователя. К ним относятся уведомления о новой почте в Ubuntu, Debian и других дистрибутивах.

К сожалению, как изменить представление работы программы /bin/login я не знаю. Ну если только через правку исходного кода. С остальным же всё проще.

Изменяем внешний вид приветствия перед логином в Linux

За строчки перед «имя_хоста login:» отвечает содержимое файла /etc/issue. Для внешних сетевых соединений (в том числе по ssh) есть файл /etc/issue.net. В эти два файла можно записывать как произвольные сообщения, так и специальные символы. Начинаются они с обратного слеша или \, а оканчиваются на какую-нибудь латинскую букву. При обработке утилитой /bin/agetty они заменяются на определённую последовательность букв или цифр (к примеру, вместо \r будет показана версия ядра Linux системы).

Специальные символы, используемые в файле /etc/issue
Символ Значение
\b Скорость передачи текущей консоли
\d Актуальная дата
\s Название дистрибутива
\l Имя конкретной консоли
\m Архитектура ОС
\n Имя хоста
\o Доменное имя
\r Версия ядра Linux
\t Время
\u Количество пользователей, вошедших в систему.
\U Строка вида «N users», где N — число из предыдущего пункта (\u)
\v Версия операционной системы, к примеру время-дата сборки

Если файл /etc/issue содержит следующие строки:
Welcome to Ozi-Linux (/r)! \d \t

То перед строкой входа в систему будет показано примерно это:
Welcome to Ozi-Linux (4.7.0-1)! Tue Aug 9 2016 22:01:51

Удаляем сообщения о новой почте в Ubuntu, Linux Mint, Debian и т. д.

Для этого необходимо создать пустой файл .hushlogin в домашней папке пользователя:
$ touch ~/.hushlogin

Кроме того, не будут отображаться и другие уведомления от системы, которые были бы показаны сразу после входа в систему. Однако могут показываться сообщения, содержащиеся в конфигурационных файлах bash.

Источник

Создание приветствия после запуска Linux Terminal

Привет! Сегодня я расскажу вам, как создать приветствие после запуска Linux Terminal.

mkdir welcome-script cd welcome-script/ 

После этого необходимо создать файл .sh

Читайте также:  Linux echo to socket

Вам нужно открыть файл welcome.sh через Vim

Основные команды

echo — команда, выводящая текст и т.д.

Переменная (программирование) — именованная

Команды в переменной — вывод чего-либо, функция

sleep — время для завершения чего-либо по истечении времени

u — переменная для функции Linux (например, имя пользователя, версия ОС и т.д.)

$ — для вывода команды Linux. Пример: os=$(whoami) (переменная=функция для команды(command)

#!/bin/bash name="Name" u="$USER" echo " " echo " " echo "░█░█░█░█▀▀▀░█░░░░█▀▀▀░█▀▀█░█▀█▀█░█▀▀▀░" echo "░█░█░█░█▀▀▀░█░░░░█░░░░█░░█░█░█░█░█▀▀▀░" echo "░▀▀▀▀▀░▀▀▀▀░▀▀▀▀░▀▀▀▀░▀▀▀▀░▀░▀░▀░▀▀▀▀░" sleep 1 echo " " now=$(date) echo "Current time: $now" echo " " echo "Hello $USER!" sleep 1 echo " " os=$(uname -r) echo "Your OS is $os" echo " " sleep 1 setup=$(neofetch) echo "Your PC stats: $setup" echo " " sleep 1 

Редактирование .bashrc

Откройте свой файловый менеджер и вставьте эту команду

Теперь вам нужно вставить команду в .bashrc

source /home/YOURUSER/welcome-script/welcome.sh 

Исходный код

Вы можете легко загрузить этот скрипт из моего репозитория GitHub.

Источник

Настройка приглашения командной строки в Bash

Bash Promt PS1

Приглашение можно настраивать. Можно добавлять информацию или, например, изменить цвет приглашения.

В какой переменной задается приглашение

Формат строки приглашения задается в переменной окружения PS1. Чтобы настроить приглашение, необходимо изменить значение переменной PS1.

Например, переменная PS1 может иметь значение:

Или, например, командой echo $PS1 можно вывести текущее значение переменной PS1. У меня в Ubuntu оно выглядит так:

echo $PS1 \[\e]0;\u@\h: \w\a\]$\[3[01;32m\]\u@\h\[3[00m\]:\[3[01;34m\]\w\[3[00m\]$

Не пугайтесь. На самом деле существует масса возможностей для настройки строки приглашения. Ниже мы рассмотрим базовые методы настройки.

Как изменить приглашение (только для данной сессии)

Можно установить переменную PS1 только для текущей сессии в терминале. Это удобно, пока вы подбираете, как будет выглядеть строка приглашения. Чтобы это сделать нужно выполнить команду export для переменной PS1, например:

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

Настройка приглашения

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

Специальные символы начинаются с символа косой черты « \ », за которой следует буква или символ. Ниже приведена таблица специальных символов.

Обозначение Описание
\a ASCII-символ bell (07)
\d Дата в формате «День недели Месяц Дата» (например, «Пн Ноя 26»)
\D Значение format передается функции strftime. В строку приглашения подставляется результат выполнения функции. Фигурные скобки обязательны.
\e ASCII-символ escape (033)
\h Hostname (имя хоста) до первого символа точка « . ».
\H Hostname (имя хоста, компьютера).
\j Количество фоновых процессов, запущенных в данной оболочке
\l Базовое название оболочки.
\n Переход на новую строку.
\r Переход к началу строки (возврат каретки).
\s Имя оболочки (имя shell).
\t Текущее время в 24-часовом формате (HH:MM:SS).
\T Текущее время в 12-часовом формате (HH:MM:SS).
\@ Текущее время в 12-часовом am/pm формате.
\A Текущее время в 24-часовом формате (HH:MM).
\u Имя пользователя.
\v Версия bash (например, 4.4).
\V Версия bash с версией релиза (например, 4.4.19).
\w Текущий абсолютный путь (полный путь). Домашняя директория сокращается до значка тильды « ~ ».
\W Текущий относительный путь. Домашняя директория сокращается до значка тильды « ~ ».
\! Номер команды в истории команд (history).
\# Номер команды в текущей сессии терминала.
\$ Символ приглашения ( # для root, $ для обычных пользователей).
\nnn Символ, соответствующий восьмеричному значению nnn.
\\ Символ обратной косой черты « \ ».
\[ Начало последовательности непечатаемых символов.
\] Конец последовательности.

Примеры

Пример 1

Приглашение, состоящее из одного символа « > »:

Пример 2

Текущее время, пользователь, текущая директория:

Пример 3

Дата, пользователь, текущая директория, номер команды:

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

Элементы строки приглашения можно раскрашивать в разные цвета.

Чтобы задавать цвета для элементов строки приглашения нужно части строки приглашения заключать в специальные символы.

Используется следующий синтаксис:
\e[ X;Ym РАСКРАШИВАЕМАЯ_СТРОКА \e[m

\e[ — начало цветовой схемы.
X;Ym — цветовая пара (X;Y). Именно значения X и Y определяют цвет.
\e[m — окончание цветовой схемы.

Небольшой пример, чтобы вы понимали о чем идет речь. Раскрасим всю строку целиком цветом с обозначением 0;36.

Цвета задаются числами. Можно задавать парой X;Y или просто Y. Например, красный это — 0;31 или просто 31. Есть и другие способы задания цветов, но в данной статье мы их не рассматриваем.

Список цифровых обозначений для цветов (Y):

Цвет Числовое
обозначение
Black 30
Red 31
Green 32
Brown 33
Blue 34
Purple 35
Cyan 36
Light gray 37
Dark gray 90
Light red 91
Light green 92
Light yellow 93
Light blue 94
Light magenta 95
Light cyan 96
White 97

При задании цвета двумя числами X;Y, первое число X принимает следующие значения:
0 — обычный цвет;
1 — будет использоваться более яркий цвет;
2 — более темный цвет;
3 — курсив;
4 — подчеркивание;
5 — моргание.

Примеры

Пример 1

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

Пример 2

Раскрасим остальные элементы строки приглашения:

export PS1="\e[1;33m\u\e[m@\e[0;96m\h\e[m \e[0;92m\W\e[m$ "

Как изменить приглашение на постоянной основе

Новое значение переменной PS1 прописывается в файле .bashrc , который расположен в вашей домашней директории (файл может отсутствовать).

Откроем файл .bashrc в редакторе nano для редактирования. Для этого в терминале выполним команду:

Перейдем в конец файла и добавим новую строку, в которой пропишем значение переменной PS1. Например:

Сохраним изменения и закроем файл. Для этого нажмите Ctrl+X , затем Y и Enter , чтобы сохранить изменения.

Теперь выполним команду source, чтобы наши изменения вступили в силу:

Перезапустите терминал. Приглашение для ввода команд будет обновлено.

Источник

Меняем приветствие в терминале Linux

Многие из тех, кто работает в Linux, используют терминал. Его приветствие обычно состоит из имени пользователя и название вашего компьютера. Но, в Linux можно изменить приветствие в терминале отредактировав файл “.bashrc” который находится в домашней директории пользователя. Но, сначала давайте по порядку разберем из чего состоит приветствие по умолчанию, это будет полезно для понимания как все устроено. И так, первым идет как уже говорилось, имя пользователя, затем имя компьютера (хоста), информация о нахождения в директории (тильда ~, домашняя директория). И последним знак доллара ($). Который означает что мы зашли под обычным пользователем, в случае с root пользователем, вместо знака доллара ($) будет решетка (#):

Shell 1

Меняем приветствие

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

\$ - Показывает знак $ для обычного пользователя или # для пользователя root
\\ Буквенный символ обратной косой черты "\"

Теперь давайте разберем все это на практике, открываем в терминале файл “.bashrc”, набрав команду:

После чего спускаемся вконец открытого файла. Для того что бы мы могли вывести в терминале свой текст, необходимо добавить несколько строк:

Стоит отметить, что в кавычках вы можете написать любой текст, который только захотите:

Shell 2

Теперь сохраняем отредактированный файл и выходим. Как пользоваться текстовым редактором Nano, вы можете ознакомиться в этой статье. Теперь необходимо загрузить наши настройки, для этого выполняем команду:

Shell 3

Теперь давайте составим приветствие, которое будет состоять из самого приветствия, а так же из имени пользователя и отображать наш путь в терминале. Для этого снова открываем файл “bashrc” командой:

Затем спускаемся вниз, до нашего вписанного кода и задаем параметры (флаги), которые описаны были чуть выше. К примеру, я хочу что бы в терминале выводился текст “Добро пожаловать”. А затем с новой строки выводилось имя пользователя и директория в которой я нахожусь. Для этого вписываем следующие значения:

export PS1="Добро пожаловать \n\u:\W $ "

Shell 4

Сохраняем отредактированный файл и выходим. Затем в терминале выполняем уже знакомую команду для применения наших настроек:

И в результате получаем следующий вид нашего приветствия в терминале:

Sheel 6

Жирный текст

Можно сделать текст более жирным, для этого нужно заключить необходимый текст между строк “\[$(tput bold)\]Ваш текст\[$(tput sgr0)\]”. То есть, то же самое приветствие, которое мы делали чуть выше, будет выглядеть следующим образом:

export PS1="\[$(tput bold)\]Добро пожаловать\[$(tput sgr0)\] \n\u:\W $ "

Shell 5

Затем для применения настроек выполняем знакомую команду:

В итоге у вас получится следующее:

Shell 7

Как видите, текст “Добро пожаловать” стал жирнее, таким образом можно выделять любой текст приветствия в терминале. И так, двигаемся дальше.

Цвет приветствия

Можно прописать и цвет для приветствия. Это конечно можно сделать и из настроек самого терминала. Но, все же давайте разберем как это можно сделать при помощи редактирования файла “.bashrc”. Так сказать, для саморазвития. Для того что бы задать текст, нужно вписать в нужное место следующие строки:

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

Shell 8 Shell 9

Заключение

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

А на этом сегодня все. Надеюсь данная статья будет вам полезна.
С уважением Cyber-X

Источник

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