как присвоить значения столбца для данных условных операторов

\xNN escape-последовательность в GNU sed, но это не стандартно, и в особенности это не доступно на Солярисе.

Можно включать литеральный символ ESC в сценарий, но это мешало бы читать и редактировать.

Можно использовать printf генерировать символ ESC. Это понимает восьмеричные Escape, не шестнадцатеричные.

esc=$(printf '\033')
echo "test" | sed "s,.*,${esc}[31m&${esc}[0m,"

Можно звонить tput генерировать текст замены в вызове к sed. Эта команда ищет escape-последовательности в terminfo базе данных. В теории, с помощью tput делает Ваш сценарий более портативным, но на практике Вы вряд ли встретитесь с терминалом, который не использует управляющие коды ANSI.

echo "test" | sed "s,.*,$(tput setaf 1)&$(tput sgr0),"

0
17.11.2018, 04:20
1 ответ

считайте свой файл линию за линией, проверьте, попадает ли значение в данную категорию и вывод соответственно.

 awk '{if($1>2)print $1,"R"; else if ($1<-2)print $1,"S"; else print $1,"M"}'
3
28.01.2020, 02:28

Теги

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