7. Отобразить информацию о рабочем каталоге
/span>дной строки полезным элементом или даже не обращают на него особого внимания. Однако полезная подсказка может изменить способ использования командной строки и, соответственно, вашей системы. В этой статье представлен ряд полезных и интересных команд Bash с примерами. Обратите внимание, что мы начинаем с самих подсказок, а затем предлагаем дополнительные инструкции по работе с ними.Здесь мы предлагаем несколько подсказок по Bash, и не все из них будут серьезными. Например, наша первая запись в списке может принести вам немного радости при использовании командной строки!
Читайте также: Основные команды Bash для новичков в Linux
1. Показывать «Каомодзи» при успешном выполнении
Эта подсказка забавная, но полезная! Идея состоит в том, что пока вы выполняете успешные команды, в подсказке будет отображаться счастливый каомодзи.
Напротив, если команда не выполнена, вы увидите грустный каомодзи.
Чтобы применить это, используйте следующий код:
PS1="\`if [ \$? = 0 ]; then echContents
- 1 1. Показывать «Каомодзи» при успешном выполнении
- 2 2.Изменить цвет подсказки Bash, когда терминал выдает неверную команду
- 3 3. Распределите подсказки Bash на несколько строк
- 4 4. Используйте цвета, чтобы сделать приглашение Bash более читабельным
- 5 5. Показать полный путь к каталогу
- 6 6. Показать количество фоновых заданий
- 7 7. Отобразить информацию о рабочем каталоге
- 8 8. Создайте свои собственные подсказки Bash
- 9 Часто задаваемые вопросы
- 9.1 1. Зачем мне использовать разные подсказки Bash?
- 9.2 2. Как добавить эти подсказки Bash в вывод терминала?
- 9.3 3. Будут ли эти запросы Bash работать и в других оболочках?
- 9.4 4. Как узнать, какую информацию и элементы я могу добавить в подсказки Bash?
- 9.5 5. Что, если я больше не хочу использовать пользовательские подсказки Bash в своем терминале?
1. Показывать «Каомодзи» при успешном выполнении
]; fi\`[\u@\h:\w]\<strong>\$</strong> "
Это может показаться запутанным, но мы используем если утверждения , чтобы определить, хорошая команда или плохая. Далее мы используем экранирование вокруг каомодзи, чтобы убедиться, что они отображаются правильно.
Читайте также: Как использовать Emacs в качестве программы чтения USENET с Gnus
2.Изменить цвет подсказки Bash, когда терминал выдает неверную команду
Вероятно, эта подсказка является самой полезной в списке. Как и выше, подсказка меняет цвет, если последняя команда не была выполнена, но также сокращает длинные пути и содержит номер История Баша каждой команды для удобства поиска.
PROMPT_COMMAND='PS1="\[\033[0;33m\][\!]\`if [[ \$? = "0" ]]; then echo "\\[\\033[32m\\]"; else echo "\\[\\033[31m\\]"; fi\`[\u.\h: \`if [[ `pwd|wc -c|tr -d " "` > 18 ]]; then echo "\\W"; else echo "\\w"; fi\`]\$\[\033[0m\] "; echo -ne "\033]0;`hostname -s`:`pwd`\007"'
<
Опять же, реализовать это может показаться сложной задачей, но на самом деле это просто. Мы снова используем операторы if вместе с цветовые коды для выделения различных сообщений.
Вы можете сделать эти цвета какими угодно, хотя мы подумаем логически, что измененные цвета должны помочь вам, а не быть измененными только ради внесения изменений.
Также читайте: Как настроить Leafnode в качестве автономного сервера USENET
3. Распределите подсказки Bash на несколько строк
Иногда вам может потребоваться включить в приглашения Bash много информации. Если это относится к вам, эта подсказка Bash может вас заинтересовать. Он показывает дату, время, полный путь к каталогу, имена пользователей и хостов, активный терминал и даже количество файлов и использование пространства.
PS1="<strong>\n</strong>\[\033[35m\]<strong>\$</strong>(/bin/date)<strong>\n</strong>\[\033[32m\]\w<strong>\n</strong>\[\033[1;31m\]\u@\h: \[\033[1;34m\]<strong>\$</strong>(/usr/bin/tty | /bin/sed -e 's:/dev/::'): \[\033[1;36m\]<strong>\$</strong>(/bin/ls -1 | /usr/bin/wc -l | /bin/sed 's: ::g') files \[\033[1;33m\]<strong>\$</strong>(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed 's/total //')b\[\033[0m\] -> \[\033[0m\]"
Здесь нам не нужны операторы if, поскольку само приглашение будет иметь статический макет, но динамическое содержимое. Вам также может быть сложно анализировать различные элементы в этом примере. Наш совет — применить его, а затем пройти по частям. Немного перепроверив ссылки, вы начнете понимать, как работает подсказка.
4. Используйте цвета, чтобы сделать приглашение Bash более читабельным
В этой подсказке нет ничего особенного, кроме удачного использования цвета для разделения различных фрагментов информации. Как видите, он предоставляет время, имена пользователей и хостов, а также текущий каталог.
PS1="\[\033[35m\]<strong>\t</strong>\[\033[m\]-\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]<strong>\$</strong> "
Это одна из самых полезных подсказок Bash, и именно на нее вам следует обратить внимание в первую очередь, чтобы настроить подсказку. Это может дать вам хорошую основу для изучения т
3. Распределите подсказки Bash на несколько строк
. Показать полный путь к каталогуКак и в случае с цветами, это приглашение представляет собой простую и минимальную подсказку, состоящую из двух строк (хотя вверху есть пустая строка).
Мы отображаем полный путь к рабочему каталогу в первой строке, а затем пользователя внизу.
PS1="[\[\033[32m\]\w]\[\033[0m\]<strong>\n</strong>\[\033[1;36m\]\u\[\033[1;33m\]-> \[\033[0m\]"
Если вы не хотите использовать пустую строку в приглашении, вы можете удалить первые \n
. Однако поиграйте с макетом и форматированием, поскольку работа каждого терминала будет отличаться в зависимости от вашего компьютера и настроек командной строки.
6. Показать количество фоновых заданий
Эта двухстрочная строка отображает информацию, которую мы еще не использовали в наших подсказках Bash. Мы предоставляем текущий подсчет фоновых заданий. Это будет полезно, если вы выполняете несколько задач одновременно, но вам нужно следить за любой деятельностью.
Первая строка — это имя пользователя и хоста, а также путь к рабочему каталогу. Во второй строке указывается номер истории и количество заданий, запущенных в фоновом режиме.
PS1='\[\e[1;32m\]\u@\H:\[\e[m\] \[\e[1;37m\]\w\[\e[m\]\n\[\e[1;33m\]hist:\! \[\e[0;33m\] \[\e[1;31m\]jobs:\j \$\[\e[m\] '
В этом нет ничего особенного, хотя он может дать вам столь необходимую информацию о активности системы. Вы можете даже превратить это в более сложную подсказку и добавить операторы if и цветовое кодирование, чтобы уведомлять вас, когда задание достигает определенных уровней.
7. Отобразить информацию о рабочем4. Используйте цвета, чтобы сделать приглашение Bash более читабельным
ploads/2024/05/bash-prompts-working-information.png" alt="Отображение информации о рабочем каталоге.">
При этом мы отображаем имя пользователя и хоста, количество заданий, а также дату и время в верхней строке. Ниже указан текущий каталог, а также количество файлов в нем и некоторая информация об использовании диска.
PS1="<strong>\n</strong>\[\e[30;1m\]\[\016\]l\[\017\](\[\e[34;1m\]\u@\h\[\e[30;1m\])-(\[\e[34;1m\]\j\[\e[30;1m\])-(\[\e[34;1m\]\@ \d\[\e[30;1m\])->\[\e[30;1m\]<strong>\n</strong>\[\016\]m\[\017\]-(\[\[\e[32;1m\]\w\[\e[30;1m\])-(\[\e[32;1m\]<strong>\$</strong>(/bin/ls -1 | /usr/bin/wc -l | /bin/sed 's: ::g') files, <strong>\$</strong>(/bin/ls -lah | /bin/grep -m 1 total | /bin/sed 's/total //')b\[\e[30;1m\])--> \[\e[0m\]"
Самая большая проблема со всеми этими подсказками — выяснить, что происходит при форматировании и экранировании. Однако, как и в случае с многострочными подсказками, вам следует разбираться с этим постепенно, пока не поймете общую структуру.
Вы даже можете вводить по частям и отмечать, отображается ли он или есть ли ошибки, и работать над полным фрагментом.
8. Создайте свои собственные подсказки Bash
Вы можете комбинировать все вышеперечисленное, чтобы создавать свои собственные запросы Bash. Например, это модификация номера семь в этом списке, но измененная, чтобы занимать меньше места и включать некоторую конкретную и актуальную информацию.
Двухстрочный стиль всегда более компактен, поскольку вы можете видеть полный путь, не уменьшая пространство для используемых вами команд.
PS1="<strong>\n</strong>\[\e[32;1m\](\[\e[37;1m\]\u\[\e[32;1m\])-(\[\e[37;1m\]jobs:\j\[\e[32;1m\])-(\[\e[37;1m\]\w\[\e[32;1m\])<strong>\n</strong>(\[\[\e[37;1m\]! \!\[\e[32;1m\])-> \[\e[0m\]"
К этому моменту вы, скорее всего, поймете, что делает это приглашение, но мы советуем попытаться создать свое собственное, а не вставлять это. Таким образом, вы сможете начать изучать, как различные элементы работают вместе, и, возможно, даже придумайте свои собственные подсказки Bash.
Часто задаваемые вопросы
1. Зачем мне использовать разные подсказки Bash?
Для этого есть много причин, но ключевым фактором является производительность. Если вы часто используете командную строку, вы будете видеть подсказку кажд
6. Показать количество фоновых заданий
естите в него самую важную информацию, она всегда будет под рукой.Во многих случаях использование пользовательской подсказки Bash более эффективно, чем открытие нескольких окон.
2. Как добавить эти подсказки Bash в вывод терминала?
Чтобы использовать любую из этих подсказок, вы можете скопировать и вставить код в приложение «Терминал». Однако это будет применяться только к текущему сеансу, поэтому теоретически вам придется делать это при каждом запуске Терминала.
Если вы хотите, чтобы изменения стали постоянными, вы можете вставить фрагменты в конец файла ~/.bashrc и перезапустить терминал.
3. Будут ли эти запросы Bash работать и в других оболочках?
Во многих случаях вы обнаружите перекрестную совместимость с другие типы ракушек . Однако нет никакой гарантии, что изменения обеспечат 100-процентный паритет.
Если вы посмотрите наш пост от настройка терминала Mac , там используется zsh. Вы заметите, что есть небольшие различия, но много общего.
4. Как узнать, какую информацию и элементы я могу добавить в подсказки Bash?
Практически любой элемент вашей системы может отображаться в командной строке Bash. Вам стоит изучить Переменные Bash , поскольку именно так вы «разблокируете» эти разные элементы.
Отличный ресурс для понимания того, что вы можете изменить, находится на сайте Веб-сайт Linux.com , и мы рекомендуем держать эту документацию под рукой на протяжении всех сеансов настройки.
5. Что, если я больше не хочу использовать пользовательские подсказки Bash в своем терминале?
Простой ответ здесь — открыть файл конфигурации и удалить соответствующие строки. Вам не нужно выполнять какие-либо дополнительные команды, хотя, возможно, стоит перезапустить Терминал, если вы не видите ожидаемых изменений.
Если вы регулярно используете командную строку или у вас есть особые потребности при запуске приложения «Терминал», то настройка подсказки может быть отличной идеей. Это не требует особых знаний, и во многих случаях нужную подсказку можно найти у другого разработчика.