GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo modificar /etc/hosts desde scripts de shell?

Solución 1:

Prefiero no tocar /etc/hosts en términos de análisis y tal. Simplemente crearía un directorio llamado /etc/hosts.d/ e inventa un script que tome:

  • ip
  • nombre
  • alias

crea un (1) archivo con una (1) línea. El nombre del archivo será <ip>.host y luego cat /etc/hosts.d/*host > /tmp/hosts.new && mv /tmp/hosts.new /etc/hosts . Tal vez agregue un incron evento que mira el /etc/hosts.d/ directorio y regenera /etc/hosts cada vez que suceda algo, de esa manera también te desharás de las entradas antiguas.

Solución 2:

Echa un vistazo a Augas. Tiene un analizador/serializador listo para usar para el archivo de hosts (que incluso está en su guía turística rápida) y viene con una herramienta simple para hacer cambios (augtool).


Linux
  1. Agregue una línea al archivo /etc/hosts con script de shell

  2. ¿Cómo saber desde qué carpeta se está ejecutando un proceso?

  3. Formato de /etc/hosts en Linux (¿diferente de Windows?)

  4. ¿Cuál es la conexión entre los directorios /etc/init.d y /etc/rcX.d en Linux?

  5. ¿Cómo eliminar cualquier cadena de un archivo a través de scripts de shell?

¿Cómo maneja Linux múltiples separadores de rutas consecutivas (/home////username///file)?

¿Cómo utiliza Systemd los scripts /etc/init.d?

¿Cómo se actualiza /etc/motd?

¿Cómo usar if-else en Shell Scripts?

Diferencia entre /etc/hosts y /etc/resolv.conf

Cómo configurar /etc/issues para mostrar la dirección IP de eth0