AWK — различия между версиями
Root (обсуждение | вклад) |
Root (обсуждение | вклад) |
||
Строка 40: | Строка 40: | ||
Если разделитель не пробел, как например в /etc/password, то можно указать разделитель столбцов с помощью -F | Если разделитель не пробел, как например в /etc/password, то можно указать разделитель столбцов с помощью -F | ||
− | awk -F ':' '{print $1}' | + | awk -F ':' '<font color=blue>{print $1}</font>' |
Версия 01:24, 1 июня 2022
Базовый синтаксис awk
awk '{action}' filename
Когда нужно найти текст, соответствующий конкретному шаблону, или же конкретное слово в тексте, команда принимает следующий вид
awk '/regex pattern/{action}' filename
Вывод всего содержимого файла
awk '{print $0}' filename
Вывод всего содержимого файла с нумерацией строк
awk '{print NR,$0}'
Вывод определённого столбца
awk '{print $3}' filename
Вывод нескольких столбцов
awk '{print $1, $4}' filename
Вывод последнего столбца
awk '{print $NF}' filename
Вывод предпоследнего столбца
awk '{print $NF-1}' filename
Вывод строк начинающихся с буквы A
awk '/^O/' filename
Вывод строк заканчивающихся с буквы F
awk '/F$/' filename
Вывод строк НЕ заканчивающихся буквой F
awk '! /F$/' filename
Вывод всех строк содержащих io
awk '/io/' filename
Вывод строк в которых значение 3го столбца меньше 40(столбец с цифрами)
awk '$3 < 40 { print $0 }'
Если разделитель не пробел, как например в /etc/password, то можно указать разделитель столбцов с помощью -F
awk -F ':' '{print $1}'
Вывести все хостнеймы(колонка 2) из строк которые начинаются с цифр(ипишек)
awk '/^[0-9]/{print $2}' /etc/hosts