Как выделить слово или фразу в выводе команды?

Например, я ввожу lshw для вывода списка аппаратных модулей; когда я нажимаю клавишу ввода, это дает мне длинный список вывода, но что, если я хочу выделить одно слово или фразу в выводе?

2
задан 9 April 2016 в 21:21

2 ответа

Согласно этот вопрос о StackOverflow, можно использовать grep -E --color

, Например, если Вы хотите выделить слово "продукт", можно сделать это:

lshw | grep -E --color 'product|'

Для выделения слова "продукт" с выводом в меньше Вас может сделать это:

lshw | grep -E --color=always 'product|' | less -R
0
ответ дан 10 April 2016 в 07:21

Используя escape-последовательности ANSI, каждый может colorize что-либо в консоли. Комбинируя тот метод с awk, мы можем отфильтровать определенные слова и сделать их цветными.

Рассмотрите этот пример:

$> df | awk  '{for(i=1;i<=NF;i++){ if($i~/sda/) $i=sprintf("\033[0;36m %s \033[0;00m",$i)}; print}'   

enter image description here

2
ответ дан 10 April 2016 в 07:21
  • 1
    Что - сказанный @muru то, как каналы обычно продолжают работать *, отклоняют системы. It' s просто, что большую часть времени, правая сторона канала использует все с левой стороны. – a CVn 19 August 2017 в 00:35

Другие вопросы по тегам:

Похожие вопросы: