Понятия не имею, насколько это будет эффективно, учитывая ваш вклад,но вот возможная стратегия:
превратить строки file2
в строку -закрепленные шаблоны регулярных выражений
sed -e 's/\./\\./g' -e 's/$/\$/' file2
передать шаблоны в grep для вывода только совпадающих частейfile1
... | grep -of - file1
(необязательный )унифицировать результаты
обычный -текстовый поиск file2
совпадающих записей
... | grep -vxFf - file2
Пр.
$ sed -e 's/\./\\./g' -e 's/$/\$/' file2 |
grep -of - file1 |
sort -u |
grep -vxFf - file2
123.com
Если записи в file2
содержат регулярное выражение -специальные символы помимо .
, их также необходимо экранировать.
Спасибо Симусу за то, что указал мне правильное направление. Суть в том, что изображение, с которым я работал, было основано на изображениях BeagleBone.
Проблема заключалась в том, что connman
получил контроль над сетевыми портами до networkd
. На одном устройстве мне удалось удалить connman
с помощью apt
. После этого моя конфигурация в /etc/systemd/network/interfaces
была правильно применена.
Мое исследование показало, что connman
— это путь в будущее, поэтому я понял, как настроить и его. Эта страница дала много полезной информации. connmanctl
можно использовать для прямой установки статического IP-адреса.
root@npi:~# connmanctl
connmanctl> config ethernet_00142d259a48_cable --ipv4 manual 192.168.10.2 255.255.255.0 192.168.10.1
connmanctl> config ethernet_00142d259a48_cable --nameservers 8.8.8.8
connmanctl> exit
Шестнадцатеричная строка в середине имени устройства — это MAC-адрес устройства. в руководстве указан статический IP-адрес, а числа — это IP-адрес, маска сети и шлюз (. Шлюз является необязательным ).
Эта страница также хорошо объясняет . К сожалению, большая часть документации направлена на настройку Wi-Fi. На большинстве сайтов статическая адресация упоминается лишь вскользь.
Надеюсь, это поможет следующему парню.