Как изменить приоритет сетевых интерфейсов?

Что-то вроде этого должно работать:

awk -F";" '!seen[$1]++{print}END {for (i in seen) if (seen[i]>1) print i,"found :" seen[i] "times"}' file

Первая часть перед END не будет печатать дубликаты, эмулирующие uniq. Это означает, что если запись будет найдена два или более раз, будет напечатана только первая запись.

Код в END будет печатать все записи, найденные более одного раза.

Если вам нужно напечатать чистые уникальные записи, эмулирующие uniq -u, что означает, что если запись будет найдена два или более раз, она вообще не будет напечатана, вы можете использовать:

awk -F";" '{seen[$1]++}END {for (k=1;k<=2;k++) for (i in seen) if (seen[i]==1) {print i;delete seen[i];continue} else {print i,"found :" seen[i] "times"}}' file

Это будет повторять массив два раза. В первый раз будут напечатаны настоящие уникальные записи, а во второй раз будут напечатаны повторяющиеся записи.

Альтернатива:

awk -F";" '{seen[$1]++}END {for (i in seen) print "found :" seen[i] "times:",i}' file |sort

Будет напечатана каждая запись вместе с подсчетом (уникальные записи будут найдены один раз, неуникальные записи будут найдены более одного раза)

1
13.08.2017, 18:13
1 ответ

Перенумеруйте номера интерфейсов по MAC-адресу -. Похоже, что что-то пошло не так при назначении IP-адреса eno0, eno1 и eno2. Вы можете назначить другое имя для MAC-адреса -, поместив файл конфигурации, например /etc/udev/rules.d/10-persistent-net-rules. Создайте строку для каждого интерфейса с желаемым MAC-адресом -и именем устройства (eno0):

.
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:11:22:33:44:55", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eno*", NAME="eno0"
0
28.01.2020, 00:50

Теги

Похожие вопросы