Если вы ссылаетесь на вывод ls
, его справочная страница отправила меня в переменную среды LS_COLORS
и вспомогательную программу dircolors
, которая Вы можете превратить список спецификаций (расширения и т.п., включая специальные значения, такие как LINK
и DIR
) в желаемые LS_COLORS
.
dircolors --print-database
предоставит вам закомментированные настройки по умолчанию.
Что ж, может быть не хорошая идея захватывать вывод, обрабатывать и отображать вывод каждой команды, которую вы вводите на терминале.
Но вы можете сделать это для конкретной команды черезtee
your-command | tee saved-output | processing-tool
Когда вы увидите результат обработки инструмента -, вы можете посмотреть на saved-output
, например, с помощью cat
(, если короткий вывод ), или less
(, если длинный вывод ).
Пример:
$ LANG=C sudo lshw | tee saved-output | grep -i -A2 disk
*-disk
description: ATA Disk
product: KINGSTON SKC300S
physical id: 0.0.0
--
*-disk
description: ATA Disk
product: WDC WD4002FYYZ-0
vendor: Western Digital
$ less saved-output
После диалога во временном чате предлагаю
vialog
или viafifo
по следующим ссылкам сделать что-то, если обнаружена конкретная команда или вывод.
Отправлять уведомление или оповещение, когда bash запрашивает ввод данных от пользователя
Прямое использование vialog
работает, как в следующем примере.
vialog 2>&1 | tee saved-output | grep 'docker container ls' && echo 'it was mentioned'
В реальном случае, я думаю, вы хотели бы начать что-то более продвинутое, чем echo 'it was mentioned'
, но это только демонстрационный пример. И все может быть эффективнее, если вы встроите специальные проверки в vialog
и отключите оповещения, которые, вероятно, не нужны в вашем случае.
Скриншот во время диалога:
Скриншот после диалога:
Таким образом, вы можете легко проверить, не найдена ли вызываемая команда:
$ LANGUAGE=C vialog 2>&1 | tee saved-output | grep -i 'Command.*not found' && echo 'it was mentioned'
Command 'docker' not found, but can be installed with:
it was mentioned
$ cat saved-output
----- start vialog at 2019-01-12 18:57:33 ----------------------------
$ docker container ls
Command 'docker' not found, but can be installed with:
sudo apt install docker.io
$ exit
exit
------- end vialog at 2019-01-12 18:58:01 --- used 28 seconds