Я просто не могу получить правильное регулярное выражение:
awk '$6 ~ /:${14}/ {print $6}' file
Мне нужно распечатать 6-е поле, если оно длиной 15 символов и заканчивается знаком ":".
Вотпример: oAFKq7XS001224:
oAFKq7XS001224:
Вам нужно использовать --posix как:
--posix
awk --posix '{ if ($6 ~ /^.{14}:$/) print $6}' file
Команда в действии
С awk справочная страница:
awk
Интервальные выражения только доступно, если - posix или - в командной строке указан повторный интервал .
А как же:
awk '$6 ~ /^.{14}:$/ { print $6 } ' file