$ echo foooobazbarrrrr |
> gawk 'match($0, /(fo+).+(bar*)/, arr)
> {print arr[1], arr[2] }'
Выход этого кода должен быть foooo barrrr
, но на моем Ubuntu он не работает и не работает.Почему моя строка awk не работает?
Если бы я писал этот код
> gawk 'match($0, /(fo+).+(bar*)/)
> {print }'
Затем его работу. Почему первая версия не работает?
Это (с первой попытки) прямо из руководства пользователя gawk и работает отлично. – Mithrandir
Я отредактировал ваше сообщение, чтобы попытаться показать, что вы действительно набрали свой терминал. Измените свой вопрос, чтобы показать, какая команда awk была напечатана при каждой попытке. –
Когда я запустил команду на своем сервере Ubuntu, она напечатала 'foooo barrrr', как и ожидалось. Я подозреваю, что ваша проблема связана с дополнительным прерыванием строки, добавленным к середине команды awk. –