AWK команда во Linux/Unix
AWK е погоден за пребарување и обработка на шаблони. Скриптата работи за пребарување на една или повеќе датотеки за да се идентификуваат соодветните шеми и ако споменатите обрасци извршуваат специфични задачи. Во ова упатство, ќе ја разгледаме командата AWK Linux и ќе видиме што може да направи.
Какви операции може да направи AWK?
- Скенирање датотеки ред по ред
- Поделување на секоја влезна линија на полиња
- Споредување влезни линии и полиња со шаблони
- Извршување на одредени дејства на линии кои одговараат
Корисност на командата AWK
- Промена на датотеки со податоци
- Произведување форматирани извештаи
Програмски концепти за команда awk
- Форматирајте ги излезните линии
- Условни и јамки
- Аритметички и операции со низа
AWK синтакса
$ awk options 'selection _criteria {action }' input-file > output-file
Примери за команда Awk
Печатење специфични колони
За да ги испечатите втората и третата колона, извршете ја командата подолу.
$ awk '{print $2 "\t" $3}' file.txt
Печатење на сите линии во датотека
Ако сакате да ги наведете сите линии и колони во датотека, извршете
$ awk ' {print $0}' file.txt
Печатење на сите линии што одговараат на одредена шема
ако сакате да печатите линии што одговараат на одредена шема, синтаксата е како што е прикажано
$ awk '/variable_to_be_matched/ {print $0}' file.txt
На пример, за да се поклопат сите записи со буквата „о“, синтаксата ќе биде
$ awk '/o/ {print $0}' file.txt
$ awk '/e/ {print $0}' file.txt
Печатење колони што одговараат на одредена шема
Кога AWK лоцира совпаѓање на шема, командата ќе го изврши целиот запис. Можете да го промените стандардното со издавање инструкција за прикажување само одредени полиња. На пример:
$ awk '/a/ {print $3 "\t" $4}' file.txt
Броење и печатење совпаднат модел
Можете да го користите AWK за броење и печатење на бројот на линии за секој совпаѓање на шаблони. На пример, командата подолу го брои бројот на примероци што се појавува соодветна шема
$ awk '/a/{++cnt} END {print "Count = ", cnt}' file.txt
Печатете линии со повеќе или помалку од број на знаци
AWK има вградена функција за должина која ја враќа должината на низата. Од командата $0 променливата ја складира целата линија и во отсуство на блок на телото, се презема стандардното дејство, т.е. дејството за печатење. Затоа, во нашата текстуална датотека, ако линијата има повеќе од 18 знаци, тогаш споредбата е точно, а линијата се печати како што е прикажано подолу.
$ awk 'length($0) > 20' file.txt
Зачувување на излезот од AWK во друга датотека
Ако сакате да го зачувате излезот од вашите резултати, користете го > операторот за пренасочување. На пример
$ awk '/a/ {print $3 "\t" $4}' file.txt > Output.txt
Можете да ги потврдите резултатите користејќи ја командата мачка како што е прикажано подолу
$ cat output.txt
Заклучок
AWK е уште една едноставна скрипта за програмирање што можете да ја користите за да манипулирате со текст во документи или да извршувате специфични функции. Споделените команди се неколку или многуте што допрва треба да ги знаете или наидете.