Я хочу получить свой IP-адрес в моей локальной сети. Я знаю, что могу сделать следующее:
$ ip address show enp0s7
2: enp0s7: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel
state UP group default qlen 1000
link/ether bc:5f:f4:3d:5b:61 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.66/24 brd 192.168.1.255 scope global noprefixroute enp0s7
valid_lft forever preferred_lft forever
inet6 fe80::7091:310e:4b80:a9e9/64 scope link
valid_lft forever preferred_lft forever
Есть ли опция в команде ip address
которая будет возвращать только 192.168.1.66
?
Самое близкое, что у меня есть на данный момент:
$ ip address show enp0s7 | grep '192.168.1' | awk '{print $2}'
192.168.1.66/24
Я надеюсь, что есть лучший способ, чем это.
ОБНОВИТЬ
Изучение ip -brief
полезно, так как теперь мне не нужно использовать grep.
Я остановился на следующем:
$ ip -brief address show enp0s7 | awk '{split($3,a,"/"); print a[1]}'
192.168.1.66