Невозможно сделать постоянную вставку объекта ядра (debian )с помощью Insmod

Вы правильно экранировали 1-ю скобку, но не вторую и не {}, которые также нужно экранировать. Кроме того, вы сопоставляете все до конца строки (.*$), что не нужно. Используя ваше регулярное выражение, это сделает то, что вы хотите:

$ sed 's/^.*\(\([0-9]\{1,3\}[\.]\)\{3\}[0-9]\{1,3\}\)/\1/' <<< "$var"
3.12.40.53 refunds@example.uk
6.77.11.44 data test@example
5.32.39.153    remix@example.com
5.113.30.37 dummy
9.109.22.6 hello@example.com
8.28.15.55 another

Но это еще сложнее, чем необходимо. Например, вам не нужен [\.], достаточно простого \.. И вы можете использовать флаг -E, чтобы включить расширенные регулярные выражения и упростить синтаксис до:

$ sed -E 's/^.*(([0-9]{1,3}\.){3}[0-9]{1,3})/\1/' <<< "$var"
3.12.40.53 refunds@example.uk
6.77.11.44 data test@example
5.32.39.153    remix@example.com
5.113.30.37 dummy
9.109.22.6 hello@example.com
8.28.15.55 another

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

$ perl -pe 's/^.*?(([\d]{1,3}\.){3}\d{1,3})/\1/' <<< "$var"
43.12.40.53 refunds@example.uk
66.77.11.44 data test@example
55.32.39.153    remix@example.com
5.113.30.37 dummy
89.109.22.6 hello@example.com
68.28.15.55 68.28.15.55 another

0
04.05.2021, 18:31
1 ответ

Вы можете добавить свой модуль в папку modules.d, и systemd подхватит его во время загрузки.

поэтому создайте файл с именем /etc/modules-load.d/<featurename>.confи пусть он содержит

<modulename>

где имя файла.ko без расширения.ko

вы можете получить документацию для модулей -load.d, набрав man modules-load.dна своем терминале

1
28.07.2021, 11:35

Теги

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