LINUX.ORG.RU

Строка awk

 


0

2

Подскажите пожалуйста как вывести строчку вида 2212/dhcp в 2212 Все перепробовал не получается. Не понимаю как как в принте сделать регулряку echo '2212/dhcp' | awk'$1~/2212$/{print &1}' Не дает результата.


Ответ на: комментарий от anonymous

Да, работает. А если в скобках будут еще параметры, скажем так br echo '22.22.22 2212/dhcp' | awk '{print $1, $2}'br awk выведет 22.22.22 2212/dhcp br А нужно именно 22.22.22 2212 без dhcp.

Ovilan
() автор топика
Ответ на: комментарий от yoghurt

Ммм, знаете, а если допустим колонки меняются местами, то данная команда уже не отрабатаывает. Получается что cut режет под чистую, я вот и пытался задать регулярку именно в переменную, но у меня ничего не получилось.

echo '22.22.22 2212/dhcp' | awk -F'[ /]' '{print $2":"$1}'
Те мне надо поменять местами первую и вторую колонку, тогда что -F что cut режет все подчистую и вывод получается не очень :3

Ovilan
() автор топика
Ответ на: комментарий от yoghurt

Ну например вот

программа с шестью колонками | awk -F'[ /]' '{print $6,":"$4}'
Я не получаю желаемого результата Или вот с cut
программа с шестью колонками | cut -d/ -f3 |awk '{print $6, ":"$4}'
вообще никакого вывода нету, пустой экран или файл если перевести вывод туда. Те трабла когда колонки надо поменять местами, вот я и хотел задать регулряки для позиционного аргумента, как это сделать?

Ovilan
() автор топика
Ответ на: комментарий от Ovilan

Я не получаю желаемого результата

Потому что ты не понимаешь, что делаешь, и не можешь толком объяснить что тебе надо. Давай пример ввода и ожидаемого вывода.

yoghurt ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.