ГлавнаяОперационные системыLinux8 полезных и интересных команд Bash

8 полезных и интересных команд Bash

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

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

Читайте также: Основные команды Bash для новичков в Linux

1. Показывать «Каомодзи» при успешном выполнении

Эта подсказка забавная, но полезная! Идея состоит в том, что пока вы выполняете успешные команды, в подсказке будет отображаться счастливый каомодзи.

Отображение Каомодзи в командной строке Bash.

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

Чтобы применить это, используйте следующий код:

PS1="\`if [ \$? = 0 ]; then echo \>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 вместе с цветовые коды для выделения различ>2.Изменить цвет подсказки Bash, когда терминал выдает неверную командуумаем логически, что измененные цвета должны помочь вам, а не быть измененными только ради внесения изменений.

Также читайте: Как настроить Leafnode в качестве автономного сервера USENET

3. Распределите подсказки Bash на несколько строк

Использование многострочной командной строки 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 более читабельным

Использование читаемых цветов в командной строке Bash.

В этой подсказке нет ничего особенного, кроме удачного использования цвета для разделе>3. Распределите подсказки 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, и именно на нее вам следует обратить внимание в первую очередь, чтобы настроить подсказку. Это может дать вам хорошую основу для изучения того, как работает персонализированная подсказка.

5. Показать полный путь к каталогу

Как и в случае с цветами, это приглашение представляет собой простую и минимальную подсказку, состоящую из двух строк (хотя вверху есть пустая строка).

Отображение полного пути к каталогу в командной строке.

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

PS1="[\[\033[32m\]\w]\[\033[0m\]<strong>\n</strong>\[\033[1;36m\]\u\[\033[1;33m\]-> \[\033[0m\]"

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

6. Показать количество фоновых заданий

Эта двухстрочная строка отображает информацию, которую мы еще не использовали в наших подсказках Bash. Мы предоставляем текущий подсчет фоновых заданий. Это будет полезно, если вы выполняете несколько задач одновременн>4. Используйте цвета, чтобы сделать приглашение Bash более читабельнымc" src="https://saintist.ru/wp-content/uploads/2024/05/bash-prompts-job-count.png" alt="Отображение количества фоновых заданий.">

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

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. Отобразить информацию о рабочем каталоге

Отображение информации о рабочем каталоге.

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

5. Показать полный путь к каталогу;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.6. Показать количество фоновых заданийисленное, чтобы создавать свои собственные запросы 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?

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

Во многих случаях использование пользовательской подсказки Bash более эффективно, чем открытие нескольких окон.

2. Как добавить эти подсказки Bash в вывод терминала?

Чтобы использовать любую из этих подсказок, вы можете скопировать и вставить код в приложение «Терминал». Однако это будет применяться только к текущему сеансу, поэтому теоретически вам придется делать это при каждом запуске Терминала.

Если вы хотите, чтобы изменения стали постоянными, вы можете вставить фрагменты в конец файла ~/.bashrc и перезапустить терминал.

3. Будут ли эти>7. Отобразить информацию о рабочем каталоге

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

Если вы посмотрите наш пост от настройка терминала Mac , там используется zsh. Вы заметите, что есть небольшие различия, но много общего.

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

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

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

5. Что, если я больше не хочу использовать пользовательские подсказки Bash в своем терминале?

Простой ответ здесь — открыть файл конфигурации и удалить соответствующие строки. Вам не нужно выполнять какие-либо дополнительные команды, хотя, возможно, стоит перезапустить Терминал, если вы не видите ожидаемых изменений.

Если вы регулярно используете командную строку или у вас есть особые потребности при запуске приложения «Терминал», то настройка подсказки может быть отличной идеей. Это не требует особых знаний, и во многих случаях нужную подсказ>8. Создайте свои собственные подсказки Bash>Часто задаваемые вопросы>1. Зачем мне использовать разные подсказки Bash?>2. Как добавить эти подсказки Bash в вывод терминала?>4. Как узнать, какую информацию и элементы я могу добавить в подсказки Bash?>5. Что, если я больше не хочу использовать пользовательские подсказки Bash в своем терминале?

ПОХОЖИЕ СТАТЬИ

Популярные записи