Самый простой способ подсчета записей - wc -l
. Если у вас есть переменная с количеством строк CSV, на которую следует ссылаться как «$ count_from_csv»
(с кавычками ).В этом случае вам не нужно использовать eval
; вместо этого вы захотите запустить команду для подсчета целевого количества строк, используя "$ (target_count_command)
.
Вы упомянули / etc / network / interfaces
, так что это система Debian ...
Создайте именованную таблицу маршрутизации. В качестве примера я использовал имя «mgmt» ниже.
echo '200 mgmt' >> /etc/iproute2/rt_tables
Выше ядро поддерживает множество таблиц маршрутизации и обращается к ним с помощью уникальных целых чисел с номерами от 0 до 255. Для таблицы также определено имя mgmt.
Ниже следует взгляд на / etc / iproute2 / rt_tables
по умолчанию, показывающий, что некоторые номера зарезервированы. Выбор 200 в этом ответе произвольный; можно использовать любой номер, который еще не используется, 1-252.
#
# reserved values
#
255 local
254 main
253 default
0 unspec
#
# local
#
Ниже в файле интерфейсов Debian 7/8 определены eth0
и eth1
. eth1
- это сеть 172. eth0
также может использовать DHCP. 172.16.100.10
- это IP-адрес, назначаемый eth1
. 172.16.100.1
- это IP-адрес маршрутизатора.
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# The production network interface
auto eth0
allow-hotplug eth0
# iface eth0 inet dhcp
# Remove the stanzas below if using DHCP.
iface eth0 inet static
address 10.10.10.140
netmask 255.255.255.0
gateway 10.10.10.1
# The management network interface
auto eth1
allow-hotplug eth1
iface eth1 inet static
address 172.16.100.10
netmask 255.255.255.0
post-up ip route add 172.16.100.0/24 dev eth1 src 172.16.100.10 table mgmt
post-up ip route add default via 172.16.100.1 dev eth1 table mgmt
post-up ip rule add from 172.16.100.10/32 table mgmt
post-up ip rule add to 172.16.100.10/32 table mgmt
Перезагрузите или перезапустите сеть.
Обновление - Излагая EL
, я заметил в комментарии, что вы «тоже интересовались RHEL». В Enterprise Linux («EL» - RHEL / CentOS / и др.) Создайте названная таблица маршрутизации, как указано выше.
Файл EL / etc / sysconfig / network
:
NETWORKING=yes
HOSTNAME=host.sld.tld
GATEWAY=10.10.10.1
Файл EL / etc / sysconfig / network-scripts / ifcfg-eth0
со статической конфигурацией (без NetworkManager без указания «HWADDR» и «UUID» для примера ниже).
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTOCOL=none
IPADDR=10.10.10.140
NETMASK=255.255.255.0
NETWORK=10.10.10.0
BROADCAST=10.10.10.255
Далее следует файл EL / etc / sysconfig / network-scripts / ifcfg-eth1
(без NetworkManager и без указания «HWADDR» и «UUID» для примера ниже).
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTOCOL=none
IPADDR=172.16.100.10
NETMASK=255.255.255.0
NETWORK=172.16.100.0
BROADCAST=172.16.100.255
Файл EL / etc / sysconfig / network-scripts / route-eth1
:
172.16.100.0/24 dev eth1 table mgmt
default via 172.16.100.1 dev eth1 table mgmt
Файл EL / etc / sysconfig / network-scripts / rule-eth1
:
from 172.16.100.0/24 lookup mgmt
В дистрибутиве на основе Debian вы можете навсегда добавить статический маршрут следующим образом:
echo "up route add -net 172.X.X.X/24 gw 172.X.X.X dev ethX" | sudo tee --append /etc/network/interfaces
В дистрибутиве на основе RHEL:
echo "172.X.X.X/24 via 172.X.X.X" | sudo tee --append /etc/sysconfig/network-scripts/route-ethX