2016-04-01 5 views
1

У меня есть много файлов данных для обработки, но нет необходимости обрабатывать каждую запись в каждом файле. Есть ли способ проинструктировать awk, чтобы остановить прецессию текущего файла и перейти к следующему файлу?AWK: Перейти к следующему файлу

+0

Какую версию Mawk вы используете? Версия [mawk] (http://invisible-island.net/mawk/), поддерживаемая Томасом Дики, добавила следующий файл в 20120627. – joast

+0

@joast - версия 'mawk', которую я использую, -' 1.3. 3', это новейшая версия на Ubuntu 14.04. – Ren

+2

Мне жаль, что если вы застряли с версией mawk, которой почти 20 лет, то единственным вариантом является обработка каждой записи в каждом файле, если вы не установите более новую версию mawk или не установите gawk, или установите любую из других более поздних версий awk. – joast

ответ

0

вы можете использовать nextfile заявление, он поддерживается во многих awks (за исключением, возможно, Solaris)

$ awk '/4/{nextfile} 1' <(seq 10) <(seq 10) 
1 
2 
3 
1 
2 
3 
+0

Спасибо за ваш ответ, но я использую 'mawk', он не поддерживает оператор' nextfile'. – Ren

Смежные вопросы