Използването на съкращения
Построява се използва за изходни линии, съответстващи на дадена маска:
могат да бъдат намалени, за да
Условията в AWK могат да бъдат установени извън скобите, т.е. получаваме:
По подразбиране, действията се извършват с цялата линия, 0 $ може да се пропусне:
печат - е действието по подразбиране, също така е възможно да се пропусне:
За да се извлече стойностите на първия ред на колоната, в която маска LEGO е:
За да се извлече стойностите на първия ред на колоната, втората колона маската LEGO, която е:
За да се замени думата в LIGO LEGO и могат да бъдат използвани за печат само променени редове:
Но ако искате да покажете всички редове (като СЕД е / LIGO / LEGO / "), структурата може да бъде опростено (1 - важи за всички редове):
Извадете всички струни, с изключение на един от всеки шест:
Изходни линии от 6 (например опашка -п 6 или СЕД "1,5d):
Печат на линии, в който втората стойност на колоната е Foo:
Печат на линии, в която 6 или повече колони:
Печат на линии, които съдържат думата дрън и бара:
Печат на линии, които съдържат думата на Mt., но няма бар:
Печат на линиите, където има думи или Foo бар (като Впиши -e "трънки" -e "бар"):
Теглене на всички не-празни редове:
Теглене на всички линии чрез премахване на съдържанието на последната колона:
Печат на броя на редовете в предната част на съдържанието:
Сменете команда (прескочи един тръбопровод, филтър низ и да се замени с Foo Foo на бар, а след това се превежда с главна буква и извежда стойността на втората колона):
структура, аналогична на AWK:
Използването на вериги
Изходни групи от редове, като се започне от ред, в които има Foo, и завършва с линията, в които има бар:
Изключването от изхода линия от въвеждане на набор от маски:
По-добър вариант:
Изключване само въвеждане на нулева прекратен (бар)
Изключване линия само с началната поява (Фу)
Partition файла на шаблона
Има изображение (файл), в които групи от редовете са разделени шаблон foo1, FOO2 т.н. Трябва да записва данни между FOO етикети в различни файлове, които съответстват на номерата в FOO.
В GNU Awk да направите това:
разбор на CSV файл
По подразбиране раздели и пространства се използват като сепаратор. За да определите разделител, като запетая, използвайте FS = ',' или опция «-F».
Редовното експресията може да бъде дефинирана като параметър, например:
Но тя не е подходяща за разбор CSV, защото пропуските могат да присъстват вътре в реда, така че е по-лесно да се намали водещите пространства преди и след десетичната запетая:
Ако данните се поставя в кавички, например «Field1", »в CSV Field2», а след това се поберат следния скрипт:
Но сценарият ще трябва да се подобри, за да се анализира вида на полета:
Field1, «Field2, с, запетаи». Field3. «Field4, Foo»
Сравнявайки два файла
Изход от всички дублиращи се редове от две несортиран файлове ФАЙЛ_1 и ФАЙЛ_2:
Изходни само избран текстови блокове
Например, за да покаже файла с текст само текст маркиран като = = текст може да се използва:
форматиране на нов ред:
Полезни връзки:
Свързани статии