On Thu, 26 Dec 2013 16:42:16 +0400
Vladimir Skubriev <vladi...@skubriev.ru> wrote:

> 1. Зачем \< и \> в grep'е почему не просто 'inet' ? или Вы просто только 
> --extended-regexp пользуетесь ?

Потому что «просто inet» пропустит inet6, что нас мало интересует.
Можно и пробел после слова поставить.

> 2. Я не знал, что можно .*inet без группы написать, точнее что не 
> обязательно все в группы объединять.

В группу объединяют, если хотят что-то с ней потом делать.

> 3. ( - группа начинается, [^ /]* - любое количество чего ?

Любых символов, кроме пробела и слеша. Это на случай адресов вида
192.168.1.22/24, которые будут в ethernet-сети.

> Чем плох мой вариант (после вашего примера)
> 
> ip a show dev ppp50 | grep 'inet' | sed -r 's/.*inet (.*) peer.*/\1/'

Сломается на «inet 192.168.1.22/24 brd 192.168.1.255 scope global eth1».
Но это уже немного другой случай, так что если интересует только ppp, то
всё нормально.

Но как сказали выше, красивее будет sed с ключом -n.

-- 
Alexander Galanin


-- 
To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: 
http://lists.debian.org/20131226172606.d19a081716a87d0ad646e...@galanin.nnov.ru

Ответить