Vaya, mal título, pero esto es lo que estoy buscando hacer. El archivo de texto-1 contiene:
123.com
234.com
567.com
Necesito insertar esos valores en un nuevo documento en 2 lugares, pasar a la siguiente línea e insertarlos.
El archivo de salida se vería así
zone "123.com" IN {
type master;
file "/etc/bind/zones/db.123.com";
allow-update { none; };allow-transfer {10.10.10.10; };
};
zone "234.com" IN {
type master;
file "/etc/bind/zones/db.234.com";
allow-update { none; };allow-transfer {10.10.10.10; };
};
zone "567.com" IN {
type master;
file "/etc/bind/zones/db.567.com";
allow-update { none; };allow-transfer {10.10.10.10; };
};
Puede ver que el dominio del primer archivo se inserta en 2 lugares del resultado. Soy nuevo en los lotes y no tengo idea de cómo empezar. Cualquier ayuda realmente apreciada.
Respuesta1
A continuación se muestra un Bash
script de shell.
#!/bin/bash
while read line
do
cat <<RECORD
zone "${line}" IN {
type master;
file "/etc/bind/zones/db.${line}";
allow-update { none; };allow-transfer {10.10.10.10; };
};
RECORD
done < Text-file-1
Y una Python
versión para ambos Linux
y Windows
.
text = r"""
zone "%s" IN {
type master;
file "/etc/bind/zones/db.%s";
allow-update { none; };allow-transfer {10.10.10.10; };
};
"""
lines = [ x.strip() for x in open('Text-file-1').readlines() ]
for line in lines:
print(text % (line, line))
Producción:
zone "123.com" IN {
type master;
file "/etc/bind/zones/db.123.com";
allow-update { none; };allow-transfer {10.10.10.10; };
};
zone "234.com" IN {
type master;
file "/etc/bind/zones/db.234.com";
allow-update { none; };allow-transfer {10.10.10.10; };
};
zone "567.com" IN {
type master;
file "/etc/bind/zones/db.567.com";
allow-update { none; };allow-transfer {10.10.10.10; };
};