<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>fboiton&#039;s blog &#187; linux</title>
	<atom:link href="http://www.fboiton.com/tag/linux/feed" rel="self" type="application/rss+xml" />
	<link>http://www.fboiton.com</link>
	<description>Blog Técnico y personal: Ideas, Guias, Tutoriales, Comentarios, Pensamientos, Entre otros.</description>
	<lastBuildDate>Sun, 05 Feb 2012 22:01:06 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>How-To: Split with AWK – Separar una cadena con AWK</title>
		<link>http://www.fboiton.com/how-to-split-with-awk-separar-una-cadena-con-awk</link>
		<comments>http://www.fboiton.com/how-to-split-with-awk-separar-una-cadena-con-awk#comments</comments>
		<pubDate>Thu, 10 Jun 2010 23:36:16 +0000</pubDate>
		<dc:creator>fboiton</dc:creator>
				<category><![CDATA[Desarrollo de Software]]></category>
		<category><![CDATA[awk]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[productivity]]></category>
		<category><![CDATA[text parser]]></category>
		<category><![CDATA[text utils]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.fboiton.com/?p=30</guid>
		<description><![CDATA[Para quien no conozca a nuestro amigo AWK pueden avocarse a wikipedia http://en.wikipedia.org/wiki/AWK. Extenderme a hablar de esta textutil de linux en su totalidad es mucho para un post, asi que por ahi irán saliendo uno que otro how-to de &#8230; <a href="http://www.fboiton.com/how-to-split-with-awk-separar-una-cadena-con-awk">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Para quien no conozca a nuestro amigo AWK pueden avocarse a wikipedia <a href="http://en.wikipedia.org/wiki/AWK">http://en.wikipedia.org/wiki/AWK</a>.</p>
<p>Extenderme a hablar de esta textutil de linux en su totalidad es mucho para un post, asi que por ahi irán saliendo uno que otro how-to de textutils.</p>
<p>Resulta que por algun motivo tenemos una cadena que necesitamos hacer pedazos a partir de un caracter en específico, por ejemplo un archivo con path de origen y destino para mover o copiar archivos, vamos a tomar de ejemplo lo que sería una linea del archivo</p>
<p><code>/home/fernando/hola.txt|/root/hola.txt</code></p>
<p>esto quiere decir que necesitamos una sentencia como esta:</p>
<p><code>cp /home/fernando/hola.txt /root/hola.txt</code></p>
<p>Acá es donde llega nuestro amigo AWK para plantearnos la solución a este dilema que viene a ser algo así:</p>
<p><code>echo &quot;/home/fernando/hola.txt|/root/hola.txt&quot; | awk '{split($1,arrayName,&quot;|&quot;); print &quot;cp &quot;arrayName[1]&quot; &quot;arrayName[2]}'</code></p>
<p>Especificamente quien hace la tarea es el comando “split” el cual tiene 3 parametros:</p>
<ul>
<li>Cadena de entrada ( $1 ) [Ver wikipedia el segmento del <a href="http://en.wikipedia.org/wiki/AWK#The_print_command">comando print</a>&#160; ] </li>
<li>nombre del Arreglo ( arrayName ) , el conteo de posiciones comienza en 1. </li>
<li>separador ( “|” ) </li>
</ul>
<p>Si tenemos varias lineas en un archivo de entrada en lugar del comando “echo” podemos utilizar “cat [archivo de entrada]” asi:</p>
<p><code>cat listado.txt | awk '{split($1,arrayName,&quot;|&quot;); print &quot;cp &quot;arrayName[1]&quot; &quot;arrayName[2]}'</code></p>
<p>La salida de este comando nos dará un listado de sentencias que podremos utilizar y ejecutar directamente, lo cual podríamos hacerlo con un apóstrofe invertido (`)</p>
<p><code>`echo &quot;/home/fernando/hola.txt|/root/hola.txt&quot; | awk '{split($1,arrayName,&quot;|&quot;); print &quot;cp &quot;arrayName[1]&quot; &quot;arrayName[2]}'`</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.fboiton.com/how-to-split-with-awk-separar-una-cadena-con-awk/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>crear multiples zonas de DNS con bind9 rapidamente</title>
		<link>http://www.fboiton.com/crear-multiples-zonas-de-dns-con-bind9-rapidamente</link>
		<comments>http://www.fboiton.com/crear-multiples-zonas-de-dns-con-bind9-rapidamente#comments</comments>
		<pubDate>Fri, 28 Nov 2008 21:45:17 +0000</pubDate>
		<dc:creator>fboiton</dc:creator>
				<category><![CDATA[Desarrollo de Software]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[bind9]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[how-to]]></category>

		<guid isPermaLink="false">http://www.fboiton.com/?p=26</guid>
		<description><![CDATA[este post detalla como agregar dominios con zona generica primero debemos crear la configuracion de la zona a utilizar como genérica $ttl 1800 @ IN SOA ns1.dominio.com. root.dominio.com. ( 2008112801 10800 3600 604800 1800 ) IN NS ns1.dominio.com. IN NS &#8230; <a href="http://www.fboiton.com/crear-multiples-zonas-de-dns-con-bind9-rapidamente">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>este post detalla como agregar dominios con zona generica </p>
<p>primero debemos crear la configuracion de la zona a utilizar como genérica<br />
<code>$ttl 1800<br />
@       IN      SOA     ns1.dominio.com. root.dominio.com. (<br />
                        2008112801<br />
                        10800<br />
                        3600<br />
                        604800<br />
                        1800 )<br />
                IN      NS      ns1.dominio.com.<br />
                IN      NS      ns2.dominio.com.<br />
                IN      A       192.168.10.5<br />
www             IN      CNAME   @<br />
</code></p>
<p>debera crearse en /var/cache/bind/[nombrequequiero].zone y los ns1 y ns2 deberan existir en la zona correspondiente a &#8220;dominio.com.&#8221;</p>
<p>Luego, configuramos en el master&#8230; para comenzar creamos el archivo</p>
<p><code>/etc/bind/named.conf.[nombrequequiero]</code></p>
<p>al cual se le van a colocar las definiciones de la zona de esta forma:<br />
<code><br />
zone "nuevodominio1.com" {<br />
type master;<br />
allow-query { any; };<br />
file "[nombrequequiero].zone";<br />
};<br />
zone "nuevodominio2.com" {<br />
type master;<br />
allow-query { any; };<br />
file "[nombrequequiero].zone";<br />
};<br />
</code><br />
una por cada dominio que se necesite, para ello se puede utilizar el script<br />
<code><br />
#!/bin/bash<br />
DOMAINSLIST=$1<br />
for i in $(cat $DOMAINSLIST); do<br />
echo "zone \"$i\" {"<br />
echo "type master;"<br />
echo "allow-query { any; };"<br />
echo "file \"[nombrequequiero].zone\";"<br />
echo "};"<br />
done</code></p>
<p>que toma como entrada el nombre de un archivo de texto que tenga todos los dominios sin ningun prefijo para concatenarlo al archivo</p>
<p>ejemplo:<br />
<code><br />
nuevodominio1.com<br />
nuevodominio2.com<br />
nuevodominio3.com<br />
</code></p>
<p>En el caso de los slaves tambien creamos un archivo </p>
<p>/etc/bind/named.conf.[nombrequequiero]</p>
<p>solo que en este caso el texto a incluir es de esta forma:<br />
<code><br />
zone "nuevodominio1.com" {<br />
type slave; masters { [ipdelDNSmaster]; };<br />
allow-query { any; };<br />
file "[nombrequequiero].zone";<br />
};<br />
zone "nuevodominio2.com" {<br />
type slave; masters { [ipdelDNSmaster]; };<br />
allow-query { any; };<br />
file "[nombrequequiero].zone";<br />
};</code></p>
<p>de similar forma puede generarse con el siguiente script:<br />
<code><br />
#!/bin/bash<br />
DOMAINSLIST=$1<br />
for i in $(cat $DOMAINSLIST); do<br />
echo "zone \"$i\" {"<br />
echo "type slave; masters { 209.85.29.20; };"<br />
echo "allow-query { any; };"<br />
echo "file \"[nombrequequiero].zone\";"<br />
echo "};"<br />
done<br />
</code></p>
<p>y agregarlo al archivo /etc/bind/named.conf.[nombrequequiero]</p>
<blockquote><p><strong>ATENCION! QUE NO SE NOS OLVIDE! HAY QUE AGREGAR LA REFERENCIA AL ARCHIVO PARA QUE SE INCLUYAN LAS ZONAS</strong></p></blockquote>
<p>/etc/bind/named.conf.[nombrequequiero]</p>
<p>EN<br />
/etc/bind/named.conf</p>
<p>al final de las zonas existentes del named.conf incluimos dicho archivo de la siguiente forma:</p>
<p><code>include "/etc/bind/named.conf.3rdtierdomains";</code></p>
<p>reiniciamos el bind del slave o los slaves, si se tiene habilitada la salida a syslog, podran ver que las zonas reportan error&#8230;</p>
<p>Luego reiniciamos el bind del master y listo! una forma práctica de crear varias zonas de DNS</p>
]]></content:encoded>
			<wfw:commentRss>http://www.fboiton.com/crear-multiples-zonas-de-dns-con-bind9-rapidamente/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

