awk '{ print ">"$2 ; while (length($1)) { print substr($1,1,15) ; $1=substr($1,16) } }'
-121--79480- Я думаю, вам нужна команда ip route
. Если вы вызываете ip route
на моем сервере, который имеет две платы Ethernet, «enp3s0» и «enp3s8», вы получаете следующее:
1001 % ip route
default via 10.0.0.1 dev enp3s8
10.0.0.0/24 dev enp3s8 proto kernel scope link src 10.0.0.3
192.168.1.0/24 dev enp3s0 proto kernel scope link src 192.168.1.148
Это показывает вам все маршруты. Похоже, вы можете получить маршрут для определенного имени устройства так:
[root@splunge ~]# ip route list dev enp3s8
default via 10.0.0.1
10.0.0.0/24 proto kernel scope link src 10.0.0.3
В строке «default via» отображается IP-адрес маршрутизатора.
Это все на коробке Arch linux. ip
является частью пакета iproute2
, и это /usr/bin/ip
. На более старой коробке RHEL это /sbin/ip
, и я понятия не имею, из какого пакета.
Можно использовать traceroute
и указать устройство для использования с -i
, затем следующим транзитным узлом будет маршрутизатор, подключенный к этому устройству.
Вы можете использовать этот скрипт:
#!/bin/bash
OLD="int 10"
NEW="int 20"
for file in /home/a/*; do
[[ -f $file ]] && sed -i "s/$OLD/$NEW/g" "$file" && echo "modified: $file"
done