Постоянная конфигурация интерфейса Veth

awk, вероятно, лучший инструмент для работы. Простое решение, похожее на уже данное, но который на самом деле использует указанные вами параметры, это:

awk '$1=="chr4" && $2>=3 && $2<=7'

Вы можете предпочесть более общее решение, который включает в себя размещение команды awkв сценарии оболочки,:

#!/bin/sh
if [ "$#" -lt 3 ]
then
        echo "Usage:    $0 chromosome low_position high_position"
        exit 1
fi
chr="$1"
lo="$2"
hi="$3"
shift 3
awk -vchromo="$chr" -vpos1="$lo" -v pos2="$hi" '$1==chromo && $2>=pos1 && $2<=pos2' "$@"

При запуске с менее чем тремя аргументами это напоминает вам, какими должны быть аргументы, и завершает работу. В противном случае он сохраняет первые три аргумента в переменных оболочки, а затем убирает их из списка аргументов. Затем он вызывает awk, передавая значения переменных оболочки как переменные awk.

Вы можете вызвать это любым из следующих способов::

./myscript chr4 3 7   data

или

./myscript chr4 3 7 < data

или

(some_other_process) |./myscript chr4 3 7
и, в любом случае, перенаправить вывод в новый файл с помощью >.
2
23.08.2019, 13:04
2 ответа

Вам нужно создать файл конфигурации для вашего интерфейса veth0 и поместить его в
/etc/sysconfig/network-scripts/ifcfg-veth0:

DEVICE="veth0"
TYPE="veth"
DEVICETYPE="Ethernet"
BOOTPROTO="static"
IPADDR="10.1.0.1"
NETMASK="255.255.255.0"
ONBOOT="yes"
NM_CONTROLLED="no"

Вам также необходимо скопировать эти скрипты и поместить их в

/etc/sysconfig/network-scripts/ 

каталог в вашей системе :Образцы:

1
27.01.2020, 22:16

Вероятно, самое простое решение — добавить необходимые команды в /etc/rc.d/rc.local. Это будет выполнено при загрузке системы (модулем rc-local.servicesystemd ).

  1. Создайте файл /etc/rc.d/rc.local, если он еще не существует.
  2. Убедитесь, что файл является исполняемым (`chmod +x /etc/rc.d/rc.local)
  3. Добавьте в свой вопрос команды ip.
0
27.01.2020, 22:16

Теги

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