<?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>TecnoRetales &#187; Script</title>
	<atom:link href="http://www.tecnoretales.com/tag/script/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.tecnoretales.com</link>
	<description>La experiencia no se olvida</description>
	<lastBuildDate>Wed, 07 Jul 2010 21:23:33 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<!-- google ad injected by adsense-optimizer http://www.adsenseoptimizer.de -->
			<div  style="padding:7px; float: right; padding-right: 0; margin: 3px;"><!-- Ad number: 1 --><script type="text/javascript"><!--
    	 
    	google_ad_client = "pub-7180773421652966"; google_alternate_color = "FFFFFF";
		google_ad_width = 468; google_ad_height = 60;
		google_ad_format = "468x60_as"; google_ad_type = "text";
		google_ad_channel =""; google_color_border = "FE8B00";
		google_color_link = "FE8B00"; google_color_bg = "FFFFFF";
		google_color_text = "000000"; google_color_url = "D9D9D9";
		google_ui_features = "rc:6"; //--></script>
		<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script></div>	<item>
		<title>Pasar segundos a horas:minutos:segundos</title>
		<link>http://www.tecnoretales.com/programacion/pasar-segundos-a-horas-minutos-segundos/</link>
		<comments>http://www.tecnoretales.com/programacion/pasar-segundos-a-horas-minutos-segundos/#comments</comments>
		<pubDate>Thu, 05 Nov 2009 21:34:31 +0000</pubDate>
		<dc:creator>Manel Pérez Mata</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://www.tecnoretales.com/?p=711</guid>
		<description><![CDATA[Una sencilla función que dado un número de segundos, nos devuelve el tiempo en formato hh:mm:ss


protected function makeTimeFromSeconds( $total_seconds )
{
    $horas              = floor ( $total_seconds / 3600 );
    $minutes            = ( ( $total_seconds / 60 ) % 60 );
    $seconds        [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>Una sencilla función que dado un número de segundos, nos devuelve el tiempo en formato hh:mm:ss</p>
<pre class="brush: php;">

protected function makeTimeFromSeconds( $total_seconds )
{
    $horas              = floor ( $total_seconds / 3600 );
    $minutes            = ( ( $total_seconds / 60 ) % 60 );
    $seconds            = ( $total_seconds % 60 );

    $time['horas']      = str_pad( $horas, 2, &quot;0&quot;, STR_PAD_LEFT );
    $time['minutes']    = str_pad( $minutes, 2, &quot;0&quot;, STR_PAD_LEFT );
    $time['seconds']    = str_pad( $seconds, 2, &quot;0&quot;, STR_PAD_LEFT );

    $time               = implode( ':', $time );

    return $time;
}
</pre>
<p>Espero os sea de utilidad.</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.tecnoretales.com/programacion/pasar-segundos-a-horas-minutos-segundos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Manipular archivos Excel con PHP</title>
		<link>http://www.tecnoretales.com/programacion/manipular-archivos-excel-con-php/</link>
		<comments>http://www.tecnoretales.com/programacion/manipular-archivos-excel-con-php/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 06:04:26 +0000</pubDate>
		<dc:creator>Manel Pérez Mata</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://www.tecnoretales.com/?p=435</guid>
		<description><![CDATA[¿Es posible tratar archivos xsl con PHP? pues un alma caritativa se ha currado una librería llamada PHP-ExcelReader basada en otra librería Java que nos permite tratar archivos de Excel con PHP de manera sencilla.
Aquí os dejo un ejemplo bastante simple que abre un archivo .xsl y pinta por pantalla todas las pestañas y su [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p><img class="size-full wp-image-440 alignright" title="excel_2007" src="http://www.tecnoretales.com/wp-content/uploads/2009/06/excel_2007.jpg" alt="excel_2007" width="100" height="104" />¿Es posible tratar archivos <strong>xsl</strong> con PHP? pues un alma caritativa se ha currado una librería llamada PHP-ExcelReader basada en otra librería Java que nos permite <strong>tratar archivos de Excel con PHP</strong> de manera sencilla.</p>
<p>Aquí os dejo un ejemplo bastante simple que abre un archivo .xsl y pinta por pantalla todas las pestañas y su información en una tabla, muy simple, pero seguro que os da las bases para poder hacer lo que necesiteis.<span id="more-435"></span></p>
<ol>
<li>Descargamos la librería <a title="PHP Excel Reader Download" href="http://sourceforge.net/project/showfiles.php?group_id=99160" target="_blank">desde aquí</a></li>
<li>Descomprimimos únicamente la carpeta Excel</li>
<li>Abrimos el archivo Excel/read.php y modificamos la línea &#8220;<em>require_once &#8216;Spreadsheet/Excel/Reader/OLERead.php&#8217;;</em>&#8221; por &#8220;<em>require_once &#8216;oleread.inc&#8217;;</em>&#8220;</li>
<li>Creamos el archivo test.php con el siguiente contenido:</li>
</ol>
<pre class="brush: php;">set_time_limit(0);
require_once 'Excel/reader.php';

$data = new Spreadsheet_Excel_Reader();

$data-&gt;setOutputEncoding('CP1251');

$data-&gt;read('mi_archivo.xls');

for($i=3; $i&lt;count($data-&gt;sheets); $i++) {
	echo &quot;&lt;table&gt;&quot;;
	for($j=1;$j&lt;count($data-&gt;sheets[$i]['cells']); $j++) {
		echo &quot;&lt;tr&gt;&quot;;
		for($z=1; $z&lt;count($data-&gt;sheets[$i]['cells'][$j]); $z++) {
			echo &quot;&lt;td&gt;&lt;center&gt;&quot;.$data-&gt;sheets[$i]['cells'][$j][$z].&quot;&lt;/center&gt;&lt;/td&gt;&quot;;
		}
		echo &quot;&lt;/tr&gt;&quot;;
	}
	echo &quot;&lt;/table&gt;&quot;;
	echo &quot;&lt;br/&gt;&lt;br/&gt;&quot;;
}</pre>
<p>Haciendo uso de este ejemplo, nos sería muy fácil almacenar esta información, por ejemplo en una base de datos MySQL, de este modo tendríamos un importador de Excel a MySQL.</p>
<p><strong>NOTA!!</strong> He probado los ejemplos que vienen al descargarte la librería y hay que modificar un par de cosas para que funcionen:</p>
<ol>
<li><strong>Fatal error: Maximum execution time of 60 seconds exceeded:</strong> Fácilmente solucianable añadiendo <em>set_time_limit (0)</em> al principio del archivo example.php</li>
<li><strong>Warning: main(Spreadsheet/Excel/Reader/OLERead.php) [function.main]: failed to open stream: No such file or directory:</strong> Este error aparece en sistemas Unix porque el include hace referencia al archivo OLERead.php y el nombre está en minúsculas (oleread.php). Modificamos el nombre a mayúsculas y listo.</li>
</ol>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.tecnoretales.com/programacion/manipular-archivos-excel-con-php/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Reducir fotos desde línea de comandos</title>
		<link>http://www.tecnoretales.com/linux/reducir-fotos-desde-linea-de-comandos/</link>
		<comments>http://www.tecnoretales.com/linux/reducir-fotos-desde-linea-de-comandos/#comments</comments>
		<pubDate>Fri, 05 Jun 2009 07:06:14 +0000</pubDate>
		<dc:creator>Manel Pérez Mata</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://www.tecnoretales.com/?p=142</guid>
		<description><![CDATA[Aquí os dejo un script tan simple como útil que reduce todas las imágenes de una carpeta a un tamaño dado. Esto nos podría ser útil, por ejemplo, porque queremos subir 200 fotos a una web, pero como tienen mucha resolución pesan aproximadamente 2MB cada una, pues con este script podemos reducir su tamaño y [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>Aquí os dejo un script tan simple como útil que <strong>reduce todas las imágenes de una carpeta</strong> a un tamaño dado. Esto nos podría ser útil, por ejemplo, porque queremos subir 200 fotos a una web, pero como tienen mucha resolución pesan aproximadamente 2MB cada una, pues con este script podemos reducir su tamaño y conseguir que su peso se reduzca de manera considerable.</p>
<p>Para ello, tendremos que tener instalados en nuestra máquina los paquetes <em><strong>imagemagick</strong></em> y <em><strong>graphicsmagick-imagemagick-compat</strong>,</em> en Ubuntu:</p>
<pre>sudo apt-get install imagemagick
sudo apt-get install graphicsmagick-imagemagick-compat<span id="more-142"></span></pre>
<p>Ahora, ya podemos utilizar el comando <em><strong>convert</strong></em> que será el responsable de realizar el redimensionado de las imágenes. De manera sencilla, podemos generar el thumbnail esta imágen:</p>
<p><img class="aligncenter size-full wp-image-144" title="Foto Mariposa" src="http://www.tecnoretales.com/wp-content/uploads/2009/05/fotos-mariposa-azul-p.jpg" alt="Foto Mariposa" width="300" height="300" /></p>
<p>lanzando la siguiente instrucción:</p>
<pre>convert -sample 50x50 mariposa.jpg mariposa-thumb.jpg</pre>
<p>el resultado:</p>
<p><img class="aligncenter size-full wp-image-145" title="Foto Mariposa Thumbnail" src="http://www.tecnoretales.com/wp-content/uploads/2009/05/fotos-mariposa-azul-thumb.jpg" alt="Foto Mariposa Thumbnail" width="50" height="50" /></p>
<p>Aquí os dejo el script que hace la redimensión de todas las imágenes de una carpeta al tamaño especificado en las variables WIDTH y HEIGHT:</p>
<pre class="brush: bash;">THUMBDIR=&quot;thumbs&quot;
PREFIX=&quot;thumb-&quot;
WIDTH=&quot;100&quot;
HEIGHT=&quot;100&quot;
mkdir $THUMBDIR
for IMG in `ls * | egrep -e '.(bmp|BMP|gif|GIF|jpeg|JPEG|jpg|JPG|png|PNG|tiff|TIFF|wbmp|WBMP)'`
do
	echo Reduciendo $IMG...
	convert -sample $WIDTH&quot;x&quot;$HEIGHT $IMG $THUMBDIR/$PREFIX$IMG
done</pre>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.tecnoretales.com/linux/reducir-fotos-desde-linea-de-comandos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	<!-- google ad injected by adsense-optimizer http://www.adsenseoptimizer.de -->
			<div  style="padding:7px; float: left; padding-left: 0px; margin: 3px;"><!-- Ad number: 2 --><script type="text/javascript"><!--
    	 
    	google_ad_client = "pub-7180773421652966"; google_alternate_color = "FFFFFF";
		google_ad_width = 468; google_ad_height = 60;
		google_ad_format = "468x60_as"; google_ad_type = "text";
		google_ad_channel =""; google_color_border = "FE8B00";
		google_color_link = "FE8B00"; google_color_bg = "FFFFFF";
		google_color_text = "000000"; google_color_url = "D9D9D9";
		google_ui_features = "rc:6"; //--></script>
		<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script></div>	<item>
		<title>Extraer URLs de imágenes de una web</title>
		<link>http://www.tecnoretales.com/programacion/extraer-urls-de-imagenes-de-una-web/</link>
		<comments>http://www.tecnoretales.com/programacion/extraer-urls-de-imagenes-de-una-web/#comments</comments>
		<pubDate>Fri, 29 May 2009 06:55:15 +0000</pubDate>
		<dc:creator>Manel Pérez Mata</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[Expresiones Regulares]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://www.tecnoretales.com/?p=260</guid>
		<description><![CDATA[¿Nunca habeis necesitado extraer todas las URLs de las imágenes de una web? Pues con este script mostraremos por pantalla las rutas de todas las imágenes contenidas en la página $url
$url = &#34;http://www.elmejorcoche.com&#34;;

$html = file_get_contents($url);

preg_match_all(&#34;/&#60;img[\s]+[^&#62;]*?src[\s]?=[\s\&#34;\']+(.*\.([gif&#124;jpg&#124;png&#124;bmp&#124;jpeg&#124;tiff]{3,4}))[\&#34;\']+.*?&#62;/&#34;, $html, $images);

$images = $images[1];
$list = array();

foreach($images as $img) {
	echo $img.&#34;&#60;br&#62;&#34;;
}
Si tu versión de PHP es inferior a 4.3.0 (en primer [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>¿Nunca habeis necesitado extraer todas las URLs de las imágenes de una web? Pues con este script mostraremos por pantalla las rutas de todas las imágenes contenidas en la página <em>$url</em></p>
<pre class="brush: php;">$url = &quot;http://www.elmejorcoche.com&quot;;

$html = file_get_contents($url);

preg_match_all(&quot;/&lt;img[\s]+[^&gt;]*?src[\s]?=[\s\&quot;\']+(.*\.([gif|jpg|png|bmp|jpeg|tiff]{3,4}))[\&quot;\']+.*?&gt;/&quot;, $html, $images);

$images = $images[1];
$list = array();

foreach($images as $img) {
	echo $img.&quot;&lt;br&gt;&quot;;
}</pre>
<p>Si tu versión de PHP es inferior a 4.3.0 (en primer lugar te recomiendo pasar a PHP5) puedes usar la siguiente función en lugar de <em>file_get_contents</em>:</p>
<pre class="brush: php;">function getHtml($url) {
    $foo = @fopen($url,&quot;r&quot;);
    if($foo){
        while(!feof($foo)){
            $html.=fgets($foo);
        }
    }
    return $html;
}</pre>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.tecnoretales.com/programacion/extraer-urls-de-imagenes-de-una-web/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Extraer lineas de un archivo</title>
		<link>http://www.tecnoretales.com/linux/extraer-lineas-de-un-archivo/</link>
		<comments>http://www.tecnoretales.com/linux/extraer-lineas-de-un-archivo/#comments</comments>
		<pubDate>Mon, 04 May 2009 16:59:18 +0000</pubDate>
		<dc:creator>Manel Pérez Mata</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programación]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://www.tecnoretales.com/?p=51</guid>
		<description><![CDATA[No se si os habreis encontrado nunca con la necesidad de extraer una pequeña parte de un fichero de uno de tamaño descomunal, pero en el día a día en mi trabajo suele pasarme, por ejemplo a la hora de extraer un xml de un log.
El caso está en que los editores gráficos se cuelgan [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p>No se si os habreis encontrado nunca con la necesidad de <strong>extraer una pequeña parte de un fichero</strong> de uno de tamaño descomunal, pero en el día a día en mi trabajo suele pasarme, por ejemplo a la hora de extraer un xml de un log.</p>
<p>El caso está en que los <strong>editores gráficos se cuelgan</strong> al manejar tamaños de cientos de megas, y hacer según que tipo de cosas es <strong>incómodo con editores en modo consola</strong> como el <em>vi</em>.<span id="more-51"></span></p>
<p>Os dejo un script bastante tonto pero que es útil. Le pasas la línea de inicio, la línea final y el archivo de texto original, y pinta por pantalla la extracción.</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#91;</span> <span class="re4">$#</span> -eq <span class="nu0">3</span> <span class="br0">&#93;</span>; <span class="kw1">then</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re2">first=</span>$<span class="nu0">1</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re2">last=</span>$<span class="nu0">2</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re2">file=</span>$<span class="nu0">3</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw2">head</span> -n <span class="re1">$last</span> <span class="re1">$file</span> | <span class="kw2">tail</span> -n `<span class="kw2">expr</span> <span class="re1">$last</span> &#8211; <span class="re1">$first</span> + <span class="nu0">1</span>`</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw3">echo</span> <span class="st0">&quot;Usage: `basename $0` [firstLine] [lastLine] [file]&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">fi</span></div>
</li>
</ol>
</div>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.tecnoretales.com/linux/extraer-lineas-de-un-archivo/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Conexión SSH sin password</title>
		<link>http://www.tecnoretales.com/linux/conexion-ssh-sin-password/</link>
		<comments>http://www.tecnoretales.com/linux/conexion-ssh-sin-password/#comments</comments>
		<pubDate>Fri, 01 May 2009 11:55:17 +0000</pubDate>
		<dc:creator>Manel Pérez Mata</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[SSH]]></category>

		<guid isPermaLink="false">http://www.tecnoretales.com/?p=118</guid>
		<description><![CDATA[¿Os habeis encontrado alguna vez programando un script que se ejecutará desde el cron y que tiene que hacer un scp a otra máquina? Yo si, y me surgía el problema de que cron no escribe el password, por lo tanto ahí acababa el correcto funcionamiento del script.
Para casos de este estilo, una posible solución [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p><img class="alignright size-full wp-image-125" title="Open SSH Logo" src="http://www.tecnoretales.com/wp-content/uploads/2009/05/26openssh.png" alt="Open SSH Logo" width="194" height="191" />¿Os habeis encontrado alguna vez programando un script que se ejecutará desde el cron y que tiene que hacer un scp a otra máquina? Yo si, y me surgía el problema de que cron no escribe el password, por lo tanto ahí acababa el correcto funcionamiento del script.</p>
<p>Para casos de este estilo, una posible solución es hacer que el servidor ssh tenga añadido nuestra máquina como host de confianza mediante el algoritmo de clave pública y clave privada DSA (<strong>Digital Signature Algorithm</strong>).<span id="more-118"></span></p>
<p>Los pasos para poder autenticar en una máquina de manera segura y sin escribir el password son:</p>
<p>1) Generamos la clave pública y privada en nuestra máquina &#8220;local&#8221; (por llamarla de alguna manera) de la siguiente manera:</p>
<pre>user@machine:~$ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/user/.ssh/id_dsa.
Your public key has been saved in /home/user/.ssh/id_dsa.pub.
The key fingerprint is:
ad:a3:f3:ad:a3:f3:ad:a3:f3:ad:a3:f3:ad:a3:f3:ad:</pre>
<p>En este caso, como lo que queremos es evitar teclear cualquier tipo de password o passphrase a la hora de hacer la conexión, no insertaremos ningún valor cuando nos pida passphrase; si bien, tenemos que ser conscientes de que el nivel de seguridad es algo menor.</p>
<p>2) Una vez generadas las claves, miramos el contenido del fichero <em>/home/user/.ssh/id_dsa.pub</em> y seleccionamos el churro de información que contiene. Algo similar a esto:</p>
<pre>ssh-dss AAAAB3NzaC1kc3MAA [...] cQde50+HLUINDX2qbexsAcDsyhnFMEvju user@machine</pre>
<p>3) Vamos a la máquina &#8220;remota&#8221; y pegamos toda esta información dentro del archivo <em>authorized_keys</em> de la carpeta <em>/home/user/.ssh/</em>. Si por un casual no existe la carpeta o el archivo, lo creamos nosotros manualmente.</p>
<p>Ya hemos configurado la máquina remota para que acepte nuestras <strong>conexiones automáticas</strong>. Si probamos hacer ssh a la máquina remota, deberíamos entrar sin necesidad de teclear nuestra contraseña.</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.tecnoretales.com/linux/conexion-ssh-sin-password/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Obtener coordenadas de Google Maps</title>
		<link>http://www.tecnoretales.com/programacion/obtener-coordenadas-google-maps/</link>
		<comments>http://www.tecnoretales.com/programacion/obtener-coordenadas-google-maps/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 17:20:12 +0000</pubDate>
		<dc:creator>Manel Pérez Mata</dc:creator>
				<category><![CDATA[Programación]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Maps]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://www.tecnoretales.com/?p=13</guid>
		<description><![CDATA[En el trabajo, me he encontrado con un pequeño problema al necesitar obtener la latitud y longitud en Google Maps, de una gran cantidad de códigos postales.
He elavorado un pequeño script en bash que, dados un código postal y un pais puedes obtener esta información de manera automática. 



#!/bin.bash


&#160;


if &#91; $# -eq 2 &#93;; then


&#160; [...]]]></description>
			<content:encoded><![CDATA[<!-- google_ad_section_start --><p><a href="http://maps.google.com/"><img class="alignleft size-full wp-image-127" title="Google Maps" src="http://www.tecnoretales.com/wp-content/uploads/2009/04/2002584623_1002d54006.jpg" alt="Google Maps" width="164" height="83" /></a>En el trabajo, me he encontrado con un pequeño problema al necesitar obtener la latitud y longitud en <a href="http://maps.google.com/">Google Maps</a>, de una gran cantidad de códigos postales.</p>
<p>He elavorado un pequeño script en bash que, dados un código postal y un pais puedes obtener esta información de manera automática. <span id="more-13"></span></p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re3">#!/bin.bash</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span> <span class="br0">&#91;</span> <span class="re4">$#</span> -eq <span class="nu0">2</span> <span class="br0">&#93;</span>; <span class="kw1">then</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re2">postalcode=</span>$<span class="nu0">1</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; <span class="re2">country=</span>$<span class="nu0">2</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re2">regex=</span><span class="st0">&quot;.*center:<span class="es0">\{</span>lat:([0-9<span class="es0">\.</span>-]*),lng:([0-9<span class="es0">\.</span>-]*)<span class="es0">\}</span>.*&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="re2">html=</span>`curl <span class="st0">&quot;http://maps.google.com/maps?f=q&amp;amp;source=s_q&amp;amp;output=js&amp;amp;hl=en&amp;amp;geocode=&amp;amp;q=$postalcode+$country&quot;</span>`</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#91;</span><span class="br0">&#91;</span> <span class="re1">$html</span> =~ <span class="re1">$regex</span> <span class="br0">&#93;</span><span class="br0">&#93;</span>; <span class="kw1">then</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re2">i=</span><span class="nu0">1</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re2">n=</span>$<span class="br0">&#123;</span><span class="re3">#BASH_REMATCH<span class="br0">&#91;</span>*<span class="br0">&#93;</span><span class="br0">&#125;</span></span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re2">lat=</span>$<span class="br0">&#123;</span>BASH_REMATCH<span class="br0">&#91;</span><span class="nu0">1</span><span class="br0">&#93;</span><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re2">lon=</span>$<span class="br0">&#123;</span>BASH_REMATCH<span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#125;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">echo</span> <span class="st0">&quot;Latitud: $lat&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">echo</span> <span class="st0">&quot;Longitud: $lon&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">echo</span> <span class="st0">&quot;Url: http://maps.google.com/maps?sll=&quot;</span><span class="re1">$lat</span><span class="st0">&quot;,&quot;</span><span class="re1">$lon</span><span class="st0">&quot;&amp;amp;ie=UTF8&amp;amp;t=h&amp;amp;z=12&amp;amp;iwloc=A&quot;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw1">fi</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw3">shift</span></div>
</li>
<li class="li2">
<div class="de2"><span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw3">echo</span> <span class="st0">&quot;Usage: `basename $0` &nbsp;&quot;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">fi</span></div>
</li>
</ol>
</div>
<p>De este modo, invocando el script de este modo:</p>
<pre>. getMapsCoordinates.sh 08970 spain</pre>
<p>Obtenemos:</p>
<pre>  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  8585    0  8585    0     0  22661      0 --:--:-- --:--:-- --:--:--  101k
<strong>Latitud: 41.365392999999997
Longitud: 2.0542660000000001
Url: http://maps.google.com/maps?sll=41.365392999999997,2.0542660000000001&amp;ie=UTF8&amp;t=h&amp;z=12&amp;iwloc=A</strong></pre>
<p>Espero que os sea de utilidad.</p>
<!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.tecnoretales.com/programacion/obtener-coordenadas-google-maps/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
