1

У меня ОЧЕНЬ простой сценарий bash, написанный для моего дистрибутива Kali Linux, поэтому мне не нужно каждый раз запускать apt-get update, apt-get upgrade, apt-get dist-upgrade, apt-get autoclean и apt-get autoremove каждый раз Я открываю свой ноутбук. После прочтения синтаксиса в течение нескольких дней я все еще не могу понять его правильно. Я пытаюсь добавить что-то в скрипт для форматирования вывода терминала, где будет отображаться "Ошибки" в КРАСНОМ. Буду признателен за любую помощь в добавлении чего-либо в мой скрипт, который покажет ошибки в RED для вывода обновления apt-get. Заранее спасибо.

Просто к вашему сведению, вот мой двухстрочный сценарий ...

apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y && apt-get autoclean -y && apt-get autoremove -y

1 ответ1

1

Вы можете использовать escape-символы, чтобы поместить любой цвет в строку.

Например:

your command 2>&1 | sed 's/^.*error.*$/^[[31m&^[[0m/g'

2> & 1 stderr на стандартный вывод.

^ [ это escape-символ. Вы можете написать это с помощью Ctrl+V+[ Это не сработает, если вы скопируете и вставите команду.

Другое решение:

your command 2>&1 | sed 's/^.*error.*$/"\\e[31m&\\e[0m"/g' | xargs -L1 echo -e

Вы можете заменить [31m другими цветовыми кодами.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .