Что означает этот код?

Usemos tputpara generar el código de color para su terminal para amarillo y negro:

$ yel=$(tput setaf 3)
$ blk=$(tput setaf 0)

Examinemos qué incluye realmente el código amarillo:

$ echo -n "$yel" | hexdump -C
00000000  1b 5b 33 33 6d                                    |.[33m|
00000005

Ahora, podemos usar greppara buscar el código de color amarillo e imprimir la cadena que coincide desde el comienzo del código amarillo hasta el siguiente código, cualquiera que sea ese código:

$ echo "abc ${yel}Yellow${blk} def" | grep -Eo $'\x1b\[33m.[^\x1b]*\x1b\[....'
Yellow 

Tenga en cuenta que el código de color para el amarillo incluye [que grepconsidera un carácter activo de expresiones regulares. Por lo tanto, para hacer coincidir un literal [, necesitamos escaparlo para grep. Para hacer esto, usamos $'...'de bash para definir el código de color con [ `escapado.

Es probable que haya más de un código para producir amarillo en su terminal. Querrá examinar la salida de cualquier comando que esté utilizando para determinar qué códigos se están utilizando e incluirlos en su comando grep.

-5
17.03.2017, 10:29
1 ответ

ps -axuwww :
axu : синтаксис BSD для перечисления всех процессов в системе
www : максимальная ширина

Вот полная команда, выполняемая слева направо:
/ usr / ucb / ps -axuwww | grep java : выводить только строки, содержащие "java"
.. | grep "SmartFileConvertor $ instance" : выводить только строки, содержащие "SmartFileConvertor" с некоторым значением экземпляра, установленным как переменная среды
.. | grep -v grep : выводить только те строки, которые не содержат «grep»
.. | nawk '{print $ 2}' : вывести второй столбец, который является pid
..> $ {pidFile} : перенаправить вывод в файл с именем внутри переменной среды pidFile

Если вы хотите узнать параметры команды / программы, страница руководства обычно доступна с помощью команды man , например man ps и man grep .

2
28.01.2020, 05:20

Теги

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