Динамическое обновление файла resolv.conf при его создании с помощью DHCP в ограниченной встроенной среде

printf может позаботиться об этом, почти:

printf "%s\0" "$a" "$b" "$c"...

printfповторяет свою строку формата столько раз, сколько необходимо, в данном случае по одному разу для каждого аргумента, так что в итоге за каждым аргументом следует нулевой байт.

Чтобы избавиться от последнего нулевого байта, используйте GNUhead:

printf "%s\0" "$a" "$b" "$c"... | head -c-1

Встроенная функция Zsh printтакже может делать это без постобработки -:

print -rNn "$a" "$b" "$c"...

(-rотключает обработку перехода, -Nпечатает аргументы, разделенные и заканчивающиеся нулевыми байтами, -nотключает терминальную новую строку. Спасибо steeldriver за подсказку!)

-1
15.09.2021, 17:55
1 ответ

Просто погуглив файл update resolv.conf, я нашел множество результатов, многие из которых принадлежат этому же сообществу. Например:

Как настроить DNS, если файл resolv.conf перезаписывается?

Знание вашего дистрибутива поможет найти правильный. Например, это не работает на Bunsenlabs Lithium 3, основанном на Debian 10 -, но может помочь на чистом Debian 10.

0
15.09.2021, 18:45

Теги

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