La respuesta es simple, la carpetaresolv.conf.d
existe en /etc/resolvconf/ y contiene los archivos head/base/original y tail. cada uno de ellos, si se edita, actualizará el archivoresolv.conf
en /etc/
digamos que desea colocar una dirección DNS estática al comienzo de resolv.conf
en /etc/ (porque en cada reinicio se restablece automáticamente a su configuración predeterminada )necesita editar el archivohead
en /etc/resolvconf/resolv.conf.d/
y escriba por ejemplo:
nameserver 1.1.1.1
nameserver 1.0.0.1
después de eso, reinicie el servicio resolvconf usando:
sudo service resolvconf restart
ahora catresolv.conf
en /etc/ y verás los nuevos cambios.
Lo mismo se aplica si desea poner cosas al final del archivo, usetail
en lugar dehead
en /etc/resolvconf/resolv.conf.d/
PD :esto es 100% probado y funcionando Ubuntu y Debian
Editar :Ya respondí las dos últimas viñetas de su pregunta, ahora con respecto a la primera viñeta que habla sobre cómo no usar la dirección DNS proporcionada por DHCP. Realmente depende del software/paquete de DNS que haya instalado, por lo que le recomiendo que consulte esta publicación y asegúrese de leer la que se encuentra debajo también en caso de que -tenga dnsmasq
.
Вот где вам нужна косвенная переменная с использованием оператора ${!var}
:
bash-4.4$ numbers=(53 8 12 9 784 69)
bash-4.4$ number=numbers[3]
bash-4.4$ echo "${!number}"
9
Эквивалентом zsh
будет:
numbers=(53 8 12 9 784 69)
number=numbers[4]
echo ${(P)number}
Индексы массивов(zsh
начинаются с 1, как и в большинстве других оболочек и инструментов оболочки, поэтому вы можете использовать numbers[4]
для получения 4-го числа ).
Если вы хотите присвоить значение 4-го элемента массива в $number
, вы должны сделать number=$numbers[4]
в zsh
или number=${numbers[3]}
вksh
(и bash
, которые только что скопировали ksh
. ] массивы ).
Когда вы объявляете переменную, вам не нужно использовать $
, но когда вы ее используете, вы должны.
Так что просто назначьте вот так, и все должно работатьnumber=${numbers[3]}