Инструменты пользователя

Инструменты сайта


subjects:administration:start

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
subjects:administration:start [2018/06/05 11:44]
создано
subjects:administration:start [2025/05/17 12:28] (текущий)
[Администрирование]
Строка 1: Строка 1:
 ====== Администрирование ====== ====== Администрирование ======
  
-[[tmux]]+  * [[tmux]] 
 +  * [[monit]] 
 +  * FIXME 
 +===== Настройки ===== 
 +===== Приглашение командной строки =====
  
-FIXME+<file bash .bashrc>​ 
 +# Раскрашиваем приглашение командной строки 
 +PS1="​\`if [ \$? = 0 ]; then echo \[\e[33m\]\t\[\e[00m\] \[\e[01\;​32m\]\(^_^\)\[\e[00m\] \[\e[32m\]\u\[\e[33m\]@\[\e[32m\]\h\[\e[00m\];​ else echo \[\e[31m\]\t\[\e[00m\] \[\e[01\;​41m\]\(O_o\)\[\e[00m\] \[\e[33m\]\u\[\e[31m\]@\[\e[33m\]\h\[\e[00m\];​ fi\`\[\e[01;​34m\] [ \w ]\[\e[00m\]\n⌎ ${debian_chroot:​+($debian_chroot)}\[\e[01;​32m\]\!\[\e[01;​34m\] \$\[\e[00m\] " 
 +</​file>​ 
 + 
 +  * __wiki.archlinux.org/​title/​Bash/​Prompt_customization__ 
 +  * __habr.com/​post/​558316/​comments/#​comment_23073468__ 
 +++++Много-много текста:​ подробный разбор| 
 +Стандартное приглашение в моей системе выглядело так: 
 + 
 +<code bash>​PS1="​[\u@\h \W]\$ "</​code>​ 
 + 
 +  * %%[%% — символ "​["​ 
 +  * %%\u%% — логин пользователя @ — %%"​@"​%% 
 +  * %%\h%% — имя хоста 
 +  * %%" "%% — пробел 
 +  * %%\W%% — рабочий каталог/​дирректория/​папка 
 +  * %%"\$ "%% — символы %%"]$ "%% 
 + 
 +Наиболее близкой частью этой конструкции,​ является вот эта часть кода: 
 + 
 +<code bash>"​\n⌎ ${debian_chroot:​+($debian_chroot)}\[\e[01;​32m\]\!\[\e[01;​34m\] \$\[\e[00m\] "</​code>​ 
 + 
 +  * %%\n%% — символ перевода строки. 
 +  * %%"⌎ "%% — это просто два символа %%"​⌎"​%% и пробел. 
 +  * ''​%%${debian_chroot:​+($debian_chroot)}%%''​ — https://​askubuntu.com/​questions/​372849/​what-does-debian-chrootdebian-chroot-do-in-my-terminal-prompt 
 +  * %%\[%% — 
 +  * %%\e[01;​32m%% — %%\033[1;​32m%% — активируем стиль: жирный зелёный 
 +  * %%\]%% — 
 +  * %%\e[01;​34m%% — %%\033[1;​34m%% — активируем стиль: жирный синий 
 +  * %%\]%% — 
 +  * %%\!%% — номер текущей команды 
 +  * %%\]%% — 
 +  * %%" \$"%% — это пробел и %%$%% 
 +  * %%\[%% — 
 +  * %%\e[00m%% — %%\033[0m%% — сброс текущего стиля к изначальному 
 +  * %%\]%% — 
 +  * %%" "%% — пробел 
 + 
 +Вообще,​ конструкции ''​%%"​\["​%%''​ и ''​%%"​\]"​%%''​ тут что-то вроде визуальной обёртки. Не помню, зачем их вставил. Если их убрать,​ будет:​ 
 + 
 +<code bash>"​\n⌎ ${debian_chroot:​+($debian_chroot)}\e[01;​32m\!\e[01;​34m \$\e[00m "</​code>​ 
 + 
 +Помимо этого, мною добавлены были лишние символы 0, до двухсимвольных конструкций. Их тоже можно убрать. 
 + 
 +<code bash>"​\n⌎ ${debian_chroot:​+($debian_chroot)}\e[1;​32m\!\e[1;​34m \$\e[0m "</​code>​ 
 + 
 +Лично мне, такую конструкцию воспринимать сложнее. 
 + 
 +Ещё можно поменять %%\e%% на %%\033%% 
 + 
 +<code bash>"​\n⌎ ${debian_chroot:​+($debian_chroot)}\033[1;​32m\!\033[1;​34m \$\033[0m "</​code>​ 
 + 
 +Это - рабочая конструкция:​ 
 +<code bash>​PS1="​\n⌎ ${debian_chroot:​+($debian_chroot)}\033[1;​32m\!\033[1;​34m \$\033[0m "</​code>​ 
 + 
 +Можно попробовать ввести её в консоль. 
 + 
 +Конструкция:​ 
 +<code bash>"​\`if [ \$? = 0 ]; then echo … ; else echo … ; fi\`"</​code>​ 
 + 
 +Позволяет отследить успешное выполнение команды или возврат ошибки. 
 + 
 +Именно вот эту конструкцию из статьи:​ 
 +<code bash>"​PS1="​\`if [ \$? = 0 ]; then echo \[\e[33m\]^_^\[\e[0m\];​ else echo \[\e[31m\]O_O\[\e[0m\];​ fi\`[\u@\h:​\w]\\$ "</​code>​ 
 + 
 +я вроде бы брал за основу. 
 + 
 +Строки:​ 
 +<code bash>​echo \[\e[33m\]\t\[\e[00m\] \[\e[01\;​32m\]\(^_^\)\[\e[00m\] \[\e[32m\]\u\[\e[33m\]@\[\e[32m\]\h\[\e[00m\];</​code>​ 
 +и 
 +<code bash>​echo \[\e[31m\]\t\[\e[00m\] \[\e[01\;​41m\]\(O_o\)\[\e[00m\] \[\e[33m\]\u\[\e[31m\]@\[\e[33m\]\h\[\e[00m\];</​code>​ 
 + 
 +повторяют друг-друга по конструкции,​ но отличаются деталями. ; приходится экранировать из-за конструкции if. 
 + 
 +  * %%\e[33m%% — активируем стиль: жёлтый 
 +  * %%\e[31m%% — активируем стиль: красный 
 +  * %%\t%% — время 
 +  * %%\e[00m%% — сброс стиля 
 +  * %%" "%% — пробел 
 +  * %%\e[01\;​32m%% — %%\033[1;​32m%% — активируем стиль: жирный зелёный 
 +  * %%\e[01\;​41m%% — %%\033[1;​41m%% — активируем стиль: жирный и красный фон 
 +  * ''​%%"​\(^_^\)\"​%%''​ — довольная рожица 
 +  * ''​%%"​\(O_o\)\"​%%''​ — удивлённая рожица 
 +  * %%\e[00m%% — %%\033[0m%% — сброс стиля 
 +  * %%" "%% — пробел 
 +  * %%\e[32m%% — %%\033[32m%% — активируем стиль: зелёный 
 +  * %%\e[33m%% — %%\033[33m%% — активируем стиль: жёлтый 
 +  * %%\u%% — логин пользователя 
 +  * %%\e[33m%% — %%\033[33m%% — активируем стиль: жёлтый 
 +  * %%\e[31m%% — %%\033[31m%% — активируем стиль: красный 
 +  * %%@%% — %%"​@"​%% 
 +  * %%\e[32m%% — %%\033[32m%% — активируем стиль: зелёный 
 +  * %%\e[33m%% — %%\033[33m%% — активируем стиль: жёлтый 
 +  * %%\h%% — имя хоста 
 +  * %%\e[00m%% — %%\033[0m%% — сброс стиля 
 + 
 +Остался вот этот кусочек:​ 
 + 
 +<code bash>​[\e[01;​34m\] [ \w ]\[\e[00m\]</​code>​ 
 + 
 +  * %%\e[01\;​34m%% — %%\033[1;​34m%% — активируем стиль: жирный синий 
 +  * %%" [ " — " [ " \w%% — рабочий каталог/​дирректория/​папка 
 +  * %%" ] " — " ] "%% 
 +  * %%\e[00m%% — %%\033[0m%% — сброс стиля 
 + 
 +Теперь,​ по прошествии времени и ещё раз разобравшись со всем заново,​ я могу всё переписать в стиле статьи,​ убрав лишнее. 
 + 
 +Было: 
 + 
 +.bashrc 
 + 
 +<code bash>​PS1="​\`if [ \$? = 0 ]; then echo \[\e[33m\]\t\[\e[00m\] \[\e[01\;​32m\]\(^_^\)\[\e[00m\] \[\e[32m\]\u\[\e[33m\]@\[\e[32m\]\h\[\e[00m\];​ else echo \[\e[31m\]\t\[\e[00m\] \[\e[01\;​41m\]\(O_o\)\[\e[00m\] \[\e[33m\]\u\[\e[31m\]@\[\e[33m\]\h\[\e[00m\];​ fi\`\[\e[01;​34m\] [ \w ]\[\e[00m\]\n⌎ ${debian_chroot:​+($debian_chroot)}\[\e[01;​32m\]\!\[\e[01;​34m\] \$\[\e[00m\] "</​code>​ 
 + 
 +Стало:​ 
 + 
 +.bashrc 
 + 
 +<code bash>​PS1="​\`if [ \$? = 0 ]; then echo \e[33m\t\e[0m \e[1\;​32m\(^_^\)\e[0m \e[32m\u\e[33m@\e[32m\h\e[0m;​ else echo \e[31m\t\e[0m \e[1\;​41m\(O_o\)\e[0m \e[33m\u\e[31m@\e[33m\h\e[0m;​ fi\`\e[1;​34m [ \w ]\e[0m\n⌎ ${debian_chroot:​+($debian_chroot)}\e[1;​32m\!\e[1;​34m \$\e[0m "</​code>​ 
 + 
 +Если заменить %%"​\e"​%% на %%"​\033"​%%,​ то получится ближе к тексту статьи:​ 
 + 
 +.bashrc 
 + 
 +<code bash>​PS1="​\`if [ \$? = 0 ]; then echo \033[33m\t\033[0m \033[01\;​32m\(^_^\)\033[0m \033[32m\u\033[33m@\033[32m\h\033[0m;​ else echo \033[31m\t\033[0m \033[1\;​41m\(O_o\)\033[0m \033[33m\u\033[31m@\033[33m\h\033[0m;​ fi\`\033[1;​34m [ \w ]\033[0m\n⌎ ${debian_chroot:​+($debian_chroot)}\033[1;​32m\!\033[1;​34m \$\033[0m "</​code>​ 
 + 
 +И оно вроде как даже работает,​ но "​глючит"​ при навигации по истории,​ например. В отличие от изначальной конструкции. Может, конструкции ''​%%"​\["​%%''​ и ''​%%"​\]"​%%''​ были нужны или что-то лишнее удалил случайно,​ когда переписывал. Искать проблему сейчас — лень, но думаю, смысл я объяснил. Сам предпочту пользоваться старой конструкцией,​ проверенной мною же. 
 + 
 +++++ 
 +===== Путешествие по истори ===== 
 +Использование:​ начните набирать команду,​ используйте ''​PgUp''​ и ''​PgDown''​ для путешествия по истории,​ где такое же начало. 
 + 
 +<file bash .inputrc>​ 
 +"​\e[5~":​ history-search-backward 
 +"​\e[6~":​ history-search-forward 
 +</​file>​
subjects/administration/start.1528188267.txt.gz · Последние изменения: 2018/06/05 11:44 —

На главную страницу Обучение Wikipedia Тестирование Контакты Нашли ошибку? Справка

Записаться на занятия

Ошибка Записаться на занятия к репетитору

Телефоны:

  • +7 (910) 874 73 73
  • +7 (905) 194 91 19
  • +7 (831) 247 47 55

Skype: eduVdom.com

закрыть[X]
Наши контакты