<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>La Ventana Muerta » melenas1414</title>
	
	<link>http://laventanamuerta.net</link>
	<description>GNU/Linux y Software Libre para el día a día.</description>
	<lastBuildDate>Wed, 23 May 2012 08:56:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/LaVentanaMuertaMelenas1414" /><feedburner:info uri="laventanamuertamelenas1414" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:browserFriendly></feedburner:browserFriendly><item>
		<title>AirDroid: controla tu android desde el navegador</title>
		<link>http://laventanamuerta.net/airdroid-controla-tu-android-desde-el-navegador/</link>
		<comments>http://laventanamuerta.net/airdroid-controla-tu-android-desde-el-navegador/#comments</comments>
		<pubDate>Sat, 26 Nov 2011 16:36:52 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[AirDroid]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Control]]></category>
		<category><![CDATA[móvil]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=8200</guid>
		<description><![CDATA[Hoy os voy a presentar una fabulosa aplicación para Android, esa es AirDorid. AirDroid te permite controlar tu android desde tu navegador, para ello cuando activas la sincronización en tu móvil esta te da una ip con un puerto y &#8230; <a href="http://laventanamuerta.net/airdroid-controla-tu-android-desde-el-navegador/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: center"><img class="aligncenter" src="https://androidmarket.googleusercontent.com/android/market/com.sand.airdroid/f-1024-0" alt=" AirDroid: controla tu android desde el navegador" width="705" height="348" title="AirDroid: controla tu android desde el navegador" /></p>
<p style="text-align: justify">Hoy os voy a presentar una fabulosa aplicación para Android, esa es AirDorid.</p>
<p style="text-align: justify">AirDroid te permite controlar tu android desde tu navegador, para ello cuando activas la sincronización en tu móvil esta te da una ip con un puerto y una contraseña. Cuando quieras controlar el movil desde el ordenador sólo tendrás que poner la dirección y el puerto y te saldrá una pantalla donde te pidirá la clave, la pones y ya tendrás el control. Después del salto más.</p>
<p style="text-align: justify"><span id="more-8200"></span></p>
<p style="text-align: justify">¿Qué te permite este programa?</p>
<ul>
<li>Los archivos</li>
<ul>
<li>Transferencia de archivos entre los dispositivos Android y ordenadores.</li>
<li>Cortar, copiar, pegar, buscar, renombrar o borrar archivos en la tarjeta SD.</li>
</ul>
<li>SMS</li>
<ul>
<li>leer, enviar, reenviar o borrar mensajes SMS.</li>
</ul>
<li>Las solicitudes de instalación, desinstalación, copia de seguridad, aplicaciones de búsqueda y hacer el procesamiento por lotes.</li>
<li>Fotos: vista previa, eliminar, importar, exportar, establecer como fondo de pantalla y mostrar las fotografías de diapositivas desde el escritorio.</li>
<li>Contactos: grupo, buscar, crear contactos, ver y borrar registros de llamadas.</li>
<li>Tonos de búsqueda, vista previa, importación, exportación, suprimir y personalizar tonos de llamada para llamadas telefónicas, notificaciones y alarmas.</li>
<li>Music Play: búsqueda, importación, exportación, eliminar o establecer como llamadas telefónicas, notificaciones y tonos de alarma.</li>
</ul>
<p>AirDroid también viene con las características incorporadas siguientes:</p>
<ul>
<li>Estado del dispositivo en tiempo real ROM, tarjeta SD, batería, CPU y RAM informe de estado y seguimiento con las cartas para demostrar los recursos disponibles / usa / total, y un toque en mejorar la memoria.</li>
<li>Administrador de Tareas o desinstalar aplicaciones Mata marcha, la operación por lotes compatibles.</li>
<li>Gerente de Aplicaciones de desinstalación, compartir o revisar los detalles de las aplicaciones de usuario y el sistema.</li>
<li>Los archivos de corte de control, copiar, renombrar, enviar / compartir, eliminar, ordenar y crear carpetas visibles u ocultos y los archivos.</li>
</ul>
<p><a href="http://laventanamuerta.net/airdroid-controla-tu-android-desde-el-navegador/"><em>Pinche aquí para ver el vídeo</em></a></p>
<h2 style="text-align: center"><a href="https://market.android.com/details?id=com.sand.airdroid" target="_blank">Descargar</a></h2>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/airdroid-controla-tu-android-desde-el-navegador/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (IX): if 3 parte</title>
		<link>http://laventanamuerta.net/curso-basico-de-creaccion-de-scripts-if-3-parte/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creaccion-de-scripts-if-3-parte/#comments</comments>
		<pubDate>Wed, 26 Oct 2011 13:00:32 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[if]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/curso-basico-de-creaccion-de-scripts-if-3-parte/</guid>
		<description><![CDATA[Después de unas vacaciones prolongadas os traigo una clase más para saber hacer scripts, hoy uniremos todo lo aprendido con el bucle if. Durante clases ya aprendimos a utilizar el read y los parámetros, hoy vamos a validar los parámetros &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creaccion-de-scripts-if-3-parte/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify">Después de unas vacaciones prolongadas os traigo una clase más para saber hacer scripts, hoy uniremos todo lo aprendido con el <strong>bucle if</strong>.<br />
Durante clases ya aprendimos a utilizar el <strong>read</strong> y los <strong>parámetros,</strong> hoy vamos a validar los <strong>parámetros</strong> para ver si han sido puestos, vamos a <strong>comparar archivos, números y cadena de caracteres</strong>.</p>
<p style="text-align: justify"><span id="more-8023"></span></p>
<p style="text-align: justify"><strong>Validación de </strong><span style="color: #000000"><strong>parámetros</strong></span></p>
<p style="text-align: justify">Cuando ejecutamos un script hay veces que necesitamos meter parámetros pero cuando le ejecutamos se nos olvida o a la persona que lo tiene que hacer se le olvida, para que no de error podemos validar si se han metido estos parámetros, de la siguiente manera:</p>
<p><code>if [ -z $1 ]<br />
then<br />
echo no se ha escrito ningún parametro<br />
fi</code></p>
<p>Si el parámetro no existe nos da el valor como verdadero y se ejecuta el then, sino continua con el else, podemos poner un exit en el then y así nos sacaría del scritp. Esto también vale para validar cualquier valor, porque indica que el valor de la derecha es igual a 0.</p>
<p><strong>Comparación de archivos</strong></p>
<p><strong></strong>También podemos comparar archivos en los script:</p>
<p>-d <em>file </em>el archivo existe y es un directorio.<br />
-e <em>file</em> el archivo existe.<br />
-f <em>file </em>el archivo existe y es un archivo.<br />
-s <em>file </em>el archivo existe y su contenido es mayor a 0.<br />
-r <em>file</em> el archivo existe y puede ser leído.<br />
-w <em>file</em> el archivo existe y puede ser escrito.<br />
-x <em>file</em> el archivo existe y es ejecutable.<br />
-O <em>file </em>el archivo existe y pertenece al usuario longeado.<br />
-G <em>file</em> el archivo existe y pertenece al grupo longeado.<br />
<em>file1 </em>-nt <em>file2</em> el <em>file1 </em>ha sido usado antes que <em>file2.</em><br />
<em>file1 </em>-ot <em>file2</em> el <em>file1</em> ha sido usado después que <em>file2.</em></p>
<p>Ejemplo:</p>
<p><code>file=/home<br />
if [ -d $file ]<br />
then<br />
echo "$file existe y es un directorio"<br />
else<br />
echo "$file no exist"<br />
fi</code></p>
<p>Saldría esto al ejecutar el script:</p>
<p><code>3 es mayor a 2</code></p>
<p><strong>Comparación de Números</strong></p>
<p>Para comparar números utilizaremos lo siguiente:</p>
<p><em>n1 </em>-eq <em>n2</em> <em>n1</em> igual a <em>n2</em><br />
<em>n1 </em>-ge <em>n2 n1</em> mayor o igual a <em>n2</em><br />
<em>n1 </em>-gt <em>n2 n1</em> mayor a <em>n2</em><br />
<em>n1 </em>-le <em>n2 n1 </em>menor o igual a <em>n2</em><br />
<em>n1 </em>-lt<em> n2 n1 </em>menor a <em>n2</em><br />
<em>n1 </em>-ne <em>n2 n1 </em>distinto a <em>n2</em></p>
<p>Ejemplo:</p>
<p><code>num1=2<br />
num2=3<br />
if [ $num2 -ge $num1 ]<br />
then<br />
echo "$num2 es mayor a $num1"<br />
else<br />
echo "$num1 es mayor a $num2"<br />
fi</code></p>
<p>Saldría esto al ejecutar el script:</p>
<p><code>3 es mayor a 2</code></p>
<p><strong>Comparación de cadenas de caracteres</strong></p>
<p>Para comparar cadenas de caracteres utilizaremos lo siguiente, aclarar que compara las cadenas con el código Ascii, osea qeu distingue entre mayúsculas y minúsculas:</p>
<p><em>cad1</em> =! <em>cad2 cad1 </em>distinta a <em>cad2</em><br />
<em>cad1</em> = <em>cad2 cad1 </em>igual a <em>cad1</em><br />
<em>cad1 </em>&lt; <em>cad2 cad1 </em>menor a <em>cad2</em><br />
<em>cad1 </em>&gt; <em>cad2 cad1 </em>mayor a <em>cad2</em></p>
<p>Ejemplo:</p>
<p><code>cad1="Hola"<br />
cad2="hola"<br />
if [ $cad1 = $cad2 ]<br />
then<br />
echo "$cad1 es igual $cad2."<br />
else<br />
echo "$cad1 es distinto a $cad2."<br />
fi</code></p>
<p>Saldría esto al ejecutar el script:</p>
<p><code>Hola es distinto a hola.</code></p>
<p>Con esto damos por finalizado el bucle if, en cuanto tenga tiempo continuamos con el bucle CASE.</p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creaccion-de-scripts-if-3-parte/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (VIII): If: if-then-else (Comandos)  2ª parte</title>
		<link>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-viii-if-if-then-else-comandos-2%c2%aa-parte/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-viii-if-if-then-else-comandos-2%c2%aa-parte/#comments</comments>
		<pubDate>Thu, 07 Jul 2011 10:00:10 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7900</guid>
		<description><![CDATA[Teoría If-then-else con comandos Hay comandos que nos pueden dar un resultado verdadero o falso, esto puede utilizarse como condición del if y así dar las distintas órdenes. Un comando que puede dar un resultado verdadero o falso es "grep", &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-viii-if-if-then-else-comandos-2%c2%aa-parte/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>Teoría</strong></p>
<p><strong>If-then-else con comandos</strong><br />
Hay comandos que nos pueden dar un resultado verdadero o falso, esto puede utilizarse como condición del if y así dar las distintas órdenes. Un comando que puede dar un resultado verdadero o falso es "grep", este comando busca un nombre en un directorio y te dice si existe o no. Una vez encontrado podemos indicarle que hacer, si borrar los archivos, o copiarlos etc.<br />
Veamos un ejemplo:</p>
<p class="code">#!/bin/bash<br />
#comprueba si existe un usuario pasado como parámetro y muestra ciertos archivos existentes<br />
#Igualamos el parámetro a una variable<br />
testuser=$1<br />
#Buscamos si existe<br />
if grep $testuser /etc/passwd<br />
then<br />
        #Si existe indica los archivos Bash<br />
	echo Los archivos bash para el usuario $testuser son:<br />
	ls -a /home/$testuser/.b*<br />
else<br />
        #Si no existe indica que no existe<br />
	echo el usuario $testuser no existe<br />
fi</p>
<p>Al ser el uso de comandos primeramente muy personal y segundo tendría que ser otro curso no me meteré más en ellos y tampoco pondré ejercicios.<br />
La próxima semana no sé si tendré listo la siguiente clase, ahora estoy de vacaciones en Venezuela y no tengo tiempo apenas para escribir, por eso no os aseguro las clases hasta finales de Septiembre principios de Octubre.</p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-viii-if-if-then-else-comandos-2%c2%aa-parte/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (VII): If: if-then y if-then-else 1ª parte</title>
		<link>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vii-if-if-then-y-if-then-else-1%c2%aa-parte/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vii-if-if-then-y-if-then-else-1%c2%aa-parte/#comments</comments>
		<pubDate>Thu, 30 Jun 2011 07:00:47 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7838</guid>
		<description><![CDATA[Menú Resolución de ejercicios Teoría If-then if-then-else Resolución de ejercicios Debéis crear un script llamado "escribe", en el cual pediréis un texto con el "read" que diga "Escribe: ", tendrá un límite de tiempo de 10 segundos y se terminará &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vii-if-if-then-y-if-then-else-1%c2%aa-parte/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h2 style="padding-left: 30px"><a name="menu">Menú</a></h2>
<ul>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#resolucion">Resolución de ejercicios</a></span></li>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#teoria">Teoría</a></span>
<ol>
<li><a href="#ifthen">If-then</a></li>
<li><a href="#ifthenelse">if-then-else</a></li>
</ol>
</li>
</ul>
<p><strong><a name="resolucion"></a>Resolución de ejercicios</strong><br />
Debéis crear un script llamado "escribe", en el cual pediréis un texto con el "read" que diga "Escribe: ", tendrá un límite de tiempo de 10 segundos y se terminará con un '.' (punto). Después sacaréis el texto por pantalla y terminaréis con un exit y con el número 56.</p>
<p class="code">nano escribe</p>
<p class="code">#!/binbash<br />
#Creado por Melenas1414 para La Ventana Muerta<br />
#Este script sacara por pantalla lo que le escribas<br />
read -p "Escribe: " -t 10 -d '.' texto<br />
echo -e "\n$texto"<br />
exit 56</p>
<p><span id="more-7838"></span>
<p class="code">./x escribe</p>
<p class="code">./escribe #para ver el error pondremos $?</p>
<p><img src="http://laventanamuerta.net/wp-content/uploads/2011/06/escribe.png" alt="escribe Curso básico de creación de scripts en Linux (VII): If: if then y if then else 1ª parte" width="655" height="410" class="aligncenter size-full wp-image-7841" title="Curso básico de creación de scripts en Linux (VII): If: if then y if then else 1ª parte" /><br />
<strong><a name="teoria"></a>Teoría</strong></p>
<ol>
<li><a href="#ifthen">If-then</a></li>
<li><a href="#ifthenelse">If-then-else</a></li>
</ol>
<p><strong><a name="ifthen"></a>If-then</strong><br />
Una de los bucles más sencillos es el <em>If</em>, hoy explicaremos el bucle<em> if </em>un poco de introducción, no tendremos ejercicios hasta la próxima semana cuando los expliquemos más extensamente.<br />
El blucle<em> If-then</em> buscan el cumplimiento de algo con el<em> if </em>y si se cumple realizan las instrucciones con el <em>then</em> y debemos cerrarlo con un fi. Veamos la sintaxis:</p>
<p class="code">if condicion<br />
then<br />
instruciones<br />
fi</p>
<p>Si la condición no se cumple se salta el <em>then</em>, si se cumple hace el <em>then</em> y continua con el script. Si no queremos que continúe con el script podemos utilizar el comando exit que vimos la semana pasada. Veamos un ejemplo sin ser script del todo ya que no hemos dado toda la teoría:</p>
<p class="code">pass=1234<br />
if $pass = 1234<br />
then<br />
echo muy bien<br />
exit 55<br />
fi</p>
<p><strong><a name="ifthenelse"></a>If-then-else</strong>:<br />
El bucle <em>if-then-else</em> es igual al anterior pero con un sino, o sea que si no se cumple la condición realiza otras instrucciones después del <em>else</em>. Veamos la sintaxis:</p>
<p class="code">if condicion<br />
then<br />
instruciones<br />
else<br />
intruciones<br />
fi</p>
<p>Si la condición se cumple se salta el <em>else</em>, si no se cumple se salta el <em>then</em>. Después realizar el bucle continua con el script a no ser que dentro de este pongamos un exit. Veamos un ejemplo:</p>
<p class="code">pass=1243<br />
if $pass = 1234<br />
then<br />
echo muy bien<br />
else<br />
echo te has equivocado, adiós.<br />
exit 54<br />
fi</p>
<p>Hasta aquí la teoría de hoy, la próxima semana entraremos un poco más en los <em>ifs</em>, empezaremos con comandos como condiciones.</p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vii-if-if-then-y-if-then-else-1%c2%aa-parte/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (VI): Read y exit</title>
		<link>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vi-read-y-exit/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vi-read-y-exit/#comments</comments>
		<pubDate>Thu, 23 Jun 2011 07:00:30 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7767</guid>
		<description><![CDATA[Menú Resolución de ejercicios Teoría Read Exit Ejercicios Resolución de ejercicios Crear un script llamado "sinx" que permita que un archivo no sea ejecutable. nano sinx #!/bin/bash #Creado por melenas1414 para La Ventana Muerta #este script eliminará el permiso de &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vi-read-y-exit/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h2 style="padding-left: 30px"><a name="menu">Menú</a></h2>
<ul>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#resolucion">Resolución de ejercicios</a></span></li>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#teoria">Teoría</a></span>
<ol>
<li><a href="#read">Read</a></li>
<li><a href="#exit">Exit</a></li>
</ol>
</li>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#ejercicios">Ejercicios</a></span></li>
</ul>
<p><strong><a name="resolucion"></a>Resolución de ejercicios</strong></p>
<ol>
<li>Crear un script llamado "sinx" que permita que un archivo no sea ejecutable.
<p class="code">nano sinx</p>
<p class="code">#!/bin/bash<br />
#Creado por melenas1414 para La Ventana Muerta<br />
#este script eliminará el permiso de ejecución<br />
#este echo es un añadido como información al ejecutar el script<br />
echo "Eliminando el permiso de ejecución de $1"<br />
chmod u-x $1</p>
<p class="code">chmod u+x sinx</p>
<p><span id="more-7767"></span>Para probarlo crearemos un archivo vacío antes y darle permisos de ejecución:</p>
<p class="code">touch prueba1<br />
chmod u+x prueba1</p>
<p class="code">./sinx prueba1</p>
<p><img class="aligncenter size-full wp-image-7768" src="http://laventanamuerta.net/wp-content/uploads/2011/06/sinx.png" alt="sinx Curso básico de creación de scripts en Linux (VI): Read y exit" width="655" height="410" title="Curso básico de creación de scripts en Linux (VI): Read y exit" /></li>
<li>Crear un script llamado "x" que permita que un archivo sea ejecutable.
<p class="code">nano x</p>
<p class="code">#!/bin/bash<br />
#Creado por melenas1414 para La Ventana Muerta<br />
#este script dará el permiso de ejecución<br />
#este echo es un añadido como información al ejecutar el script<br />
echo "Dando el permiso de ejecución de $1"<br />
chmod u+x $1</p>
<p class="code">chmod u+x x</p>
<p>Utilizamos el archivo de antes "prueba1" para darle permisos de ejecución:</p>
<p class="code">./x prueba1</p>
<p><img class="aligncenter size-full wp-image-7768" src="http://laventanamuerta.net/wp-content/uploads/2011/06/x.png" alt="x Curso básico de creación de scripts en Linux (VI): Read y exit" width="655" height="410" title="Curso básico de creación de scripts en Linux (VI): Read y exit" /><br />
Ahora podremos utilizar este script para dar permisos de ejecución a los demás scripts.</li>
</ol>
<p><strong><a href="#menu">Volver al menú ↑</a></strong></p>
<p><strong><a name="teoria"></a>Teoría</strong></p>
<ol>
<li><a href="#read">Read</a></li>
<li><a href="#exit">Exit</a></li>
</ol>
<p><strong><a name="read">1. Read</a></strong><br />
Este operando nos permite insertar en una variable un texto mientras se está ejecutando el script. Su sintaxis es así:</p>
<p class="code">read [-d delim] [-n ncars] [-N ncars] [-p prompt] [-t tiempo] [nombre ...]</p>
<p>-d: Sirve para cambiar el carácter para el final de texto introducido. Ejemplo: read -d "d" (cuando pongamos una "d", el read terminará)<br />
-n/N: Sirve para decir el número de caracteres que debe tener la variable, o sea el número de caracteres que puedes insertar.<br />
-p: Sirve para poner un mensaje antes de insertar el texto, debe ir entre comillado<br />
-t: con esto puedes indicar el tiempo que quieres que esté activo, se usa en segundos<br />
nombre: con esto indicas el nombre de la variable donde vas a insertar el texto.</p>
<p>Al insertar el texto no podemos borrar ningún carácter ya escrito.<br />
Veamos un ejemplo:</p>
<p class="code">nano prueba2</p>
<p class="code">#!/bin/bash<br />
#Creado por melenas1414 para La Ventana Muerta<br />
#Ejemplo de read<br />
#Utilizamos el read para pedir que se nos inserte un texto<br />
read -n 12 -p "Inserta cualquier cosa menor de 13 caracteres: " cosa<br />
#imprimimos la variable, ponemos un salto de línea para que no nos ponga seguido lo escrito<br />
echo -e "\n$cosa"</p>
<p class="code">./x prueba2</p>
<p class="code">./prueba2</p>
<p><img class="aligncenter size-full wp-image-7768" src="http://laventanamuerta.net/wp-content/uploads/2011/06/prueba2.png" alt="prueba2 Curso básico de creación de scripts en Linux (VI): Read y exit" width="655" height="410" title="Curso básico de creación de scripts en Linux (VI): Read y exit" /><br />
<strong><a href="#teoria">Volver al menú de Teoría ↑</a></strong><br />
<strong><a href="#menu">Volver al menú ↑</a></strong></p>
<p><strong><a name="exit">2. Exit</a></strong></p>
<p>Linux dispone de una variable de entorno especial que nos permite comprobar como finalizó el último comando ejecutado, esta variable es $? y almacenará un valor numérico que equivaldrá al estado de la salida.</p>
<p>Valores más comunes:</p>
<table style="padding: 0px;margin: 0px" border="1">
<tbody>
<tr style="padding: 0px;margin: 0px">
<th><span style="color: #111111;line-height: 22px">Valor Exit</span></th>
<th>Estado Salida</th>
</tr>
<tr style="padding: 0px;margin: 0px">
<td style="padding: 0px;margin: 0px">0 (Cero)</td>
<td style="padding: 0px;margin: 0px">Exito</td>
</tr>
<tr style="padding: 0px;margin: 0px">
<td style="padding: 0px;margin: 0px">No 0</td>
<td style="padding: 0px;margin: 0px">Fallo</td>
</tr>
<tr style="padding: 0px;margin: 0px">
<td style="padding: 0px;margin: 0px">2</td>
<td style="padding: 0px;margin: 0px">Uso incorrecto</td>
</tr>
<tr style="padding: 0px;margin: 0px">
<td style="padding: 0px;margin: 0px">127</td>
<td style="padding: 0px;margin: 0px">Comando No encontrado</td>
</tr>
<tr style="padding: 0px;margin: 0px">
<td style="padding: 0px;margin: 0px">126</td>
<td style="padding: 0px;margin: 0px">No es un ejecutable</td>
</tr>
</tbody>
</table>
<p>En el script se llama escribiendo "exit" espacio y un número, ejemplo:</p>
<p class="code">exit 2</p>
<p>Cuando pones eso en el script desde ese punto se sale automáticamente de la ejecución. La verdad ahora no tiene mucho sentido, pero cuando veamos los ifs podremos utilizarlo para salir si la condición no es favorable.<br />
<strong><a href="#teoria">Volver al menú de Teoría ↑</a></strong><br />
<strong><a href="#menu">Volver al menú ↑</a></strong></p>
<p><strong><a name="ejercicios"></a>Ejercicios</strong><br />
Debéis crear un script llamado "escribe", en el cual pediréis un texto con el "read" que diga "Escribe: ", tendrá un límite de tiempo de 10 segundos y se terminará con un '.' (punto). Después sacaréis el texto por pantalla y terminaréis con un exit y con el número 56.<br />
<strong><a href="#menu">Volver al menú ↑</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-vi-read-y-exit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick “`”)</title>
		<link>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-v-parametros-y-comandos-backtick/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-v-parametros-y-comandos-backtick/#comments</comments>
		<pubDate>Thu, 16 Jun 2011 07:00:29 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7715</guid>
		<description><![CDATA[Menú Resolución de ejercicios Teoría Parametros Comandos (backtick "`") Ejercicios Resolución de Ejercicios Creáis un script llamado cuentas, este script debe sacar por pantalla el resultado de la suma, resta, multiplicación y división de estos dos número: 34 y 12. &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-v-parametros-y-comandos-backtick/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<h2 style="padding-left: 30px"><a name="menu">Menú</a></h2>
<ul>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#resolucion">Resolución de ejercicios</a></span></li>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#teoria">Teoría</a></span>
<ol>
<li><a href="#parametros">Parametros</a></li>
<li><a href="#comandos">Comandos (backtick "`")</a></li>
</ol>
</li>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#ejercicios">Ejercicios</a></span></li>
</ul>
<p><strong><a name="resolucion"></a>Resolución de Ejercicios</strong></p>
<ol>
<li>Creáis un script llamado <code>cuentas</code>, este script debe sacar por pantalla el resultado de la suma, resta, multiplicación y división de estos dos número: 34 y 12. Estos números deben ser introducidos como variables.
<p class="code">nano cuentas</p>
<p class="code">#!/bin/bash<br />
#Creado por melenas1414 para La Ventana Muerta<br />
#este script debe mostrar por pantalla el resultado de la suma, resta, multiplicación y división de estos dos número: 34 y 12. Estos números deben ser metidos como variables.<br />
a=34<br />
b=12<br />
suma=$[a+b]<br />
resta=$[a-b]<br />
multi=$[a*b]<br />
divi=$[a/b]<br />
echo "$a + $b = $suma"<br />
echo "$a - $b = $resta"<br />
echo "$a x $b = $multi"<br />
echo "$a / $b = $divi"</p>
<p><span id="more-7715"></span></p>
<p class="code">chmod u+x cuentas</p>
<p class="code">./cuentas<br />
<img class="aligncenter size-full wp-image-7717" src="http://laventanamuerta.net/wp-content/uploads/2011/06/cuentas.png" alt="cuentas Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" width="655" height="393" title="Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" /></p>
</li>
<li>Creáis un script llamado <code>varusu</code>, este script estará compuesto por tres variables que luego deben mostrar por pantalla los siguientes datos:
<ol>
<li>Tu nombre</li>
<li>Tu web favorita, nombre y dirección web (uno seguido del otro con espacios)</li>
<li>Y tus exploradores de internet favoritos (uno seguido del otro con espacios)</li>
</ol>
<p class="code">nano varusu</p>
<p class="code">#!/bin/bash<br />
#Creado por melenas1414 para La Ventana Muerta<br />
#este script estará compuesto por tres variables que luego deben sacar por pantalla unos datos<br />
nombre="nombre"<br />
web="www.laventanamuerta.net"<br />
webnom="La Ventana Muerta"<br />
webdir="http://laventanamuerta.net"<br />
xpl1="Chrome"<br />
xpl2="Firefox"<br />
echo "$nombre"<br />
echo "$web $webnom $webdir"<br />
echo "$xpl1 $xpl2"</p>
<p class="code">chmod u+x varusu</p>
<p class="code">./varusu<br />
<img class="aligncenter size-full wp-image-7717" src="http://laventanamuerta.net/wp-content/uploads/2011/06/varusu.png" alt="varusu Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" width="655" height="393" title="Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" /></p>
</li>
</ol>
<p><strong><a href="#menu">Volver al menú ↑</a></strong></p>
<p><strong><a name="teoria"></a>Teoría</strong></p>
<ol>
<li><a href="#parametros">Parámetros</a></li>
<li><a href="#comandos">Comandos (backtick "`")</a></li>
</ol>
<p><strong><a name="parametros">1. Parámetros</a></strong></p>
<p>Los parámetros son como una variable, debes indicar los parámetros antes de la ejecución del script. Para ello debemos poner la ejecución del script y luego los parámetros. Luego dentro del programa llamaremos a los parámetros por medio de el signo '$' y a continuación un número del 1 al 9 y si se desea más debemos ponerlo entre {} el número, que indica el lugar del parámetro, un ejemplo:</p>
<p class="code">nano numeros</p>
<p class="code">total=$[${11}+${12}]<br />
echo "${11}"<br />
echo "${12}"<br />
echo "Total $total"</p>
<p class="code">chmod u+x numeros</p>
<p class="code">./numeros 1 2 3 4 5 6 7 8 9 10 11 12</p>
<p><img class="aligncenter size-full wp-image-7733" src="http://laventanamuerta.net/wp-content/uploads/2011/06/numeros.png" alt="numeros Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" width="655" height="410" title="Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" /></p>
<p>Otras opciones que permiten los parámetros son éstas:</p>
<ul>
<li>$#: esta variable te indica el número de parámetros que has indicado</li>
<li>$*: esta variable te muestra todos los parámetros en una sola variable</li>
<li>$@: esta variable te muestra todos los parámetros en una lista, esto nos será útil cuando utilicemos los bucles.</li>
</ul>
<p><strong><a href="#teoria">Volver al menú de Teoría ↑</a></strong></p>
<p><strong><a href="#menu">Volver al menú ↑</a></strong></p>
<p><strong><a name="comandos">Comandos (Backtick '`')</a></strong></p>
<p>En los scripts tambien podemos llamar a comandos de linux, para ello solo tenemos que poner el nombre del comando seguido de sus diferentes parámetros, ejemplo:</p>
<p class="code">nano comandos</p>
<p class="code">ls -l</p>
<p class="code">chmod u+x comandos</p>
<p class="code">./comandos</p>
<p><img class="aligncenter size-full wp-image-7733" src="http://laventanamuerta.net/wp-content/uploads/2011/06/comandos.png" alt="comandos Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" width="655" height="410" title="Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" /><br />
También podemos meter el resultaod de un comando en una variable, para ello debemos poner el nombre de la variable, un = y a continuación el comando entre backtick ('`'), este carácter se pone dando a la tecla que está al lado de la "p" y después un espació, es el acento francés. Veamos un ejemplo:</p>
<p class="code">nano comandosvar</p>
<p class="code">date=`date`<br />
echo "Hoy es $date"</p>
<p class="code">chmod u+x comandosvar</p>
<p class="code">./comandosvar</p>
<p><img class="aligncenter size-full wp-image-7733" src="http://laventanamuerta.net/wp-content/uploads/2011/06/comandosvar.png" alt="comandosvar Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" width="655" height="410" title="Curso básico de creación de scripts en Linux (V): Parametros y Comandos (backtick `)" /></p>
<p><strong><a href="#teoria">Volver al menú de Teoría ↑</a></strong></p>
<p><strong><a href="#menu">Volver al menú ↑</a></strong></p>
<p><strong><a name="ejercicios"></a>Ejercicios</strong></p>
<p>Debéis crear dos scripts que se llamen "sinx" y "x": el sinx hará que un archivo no ejecutable, el x hará que un archivo sea ejecutable, por ejemplo si yo pongo +x comandos el archivo comandos será ejecutable y si pongo -x comandos el archivo comandos ya no será ejecutable.</p>
<p>Pista: chmod u+x (permite que sea ejecutable) chmod u-x (permite que no sea ejecutable)</p>
<p><strong><a href="#menu">Volver al menú de Teoría ↑</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-v-parametros-y-comandos-backtick/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (IV): Variables de usuario</title>
		<link>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iv-variables-de-usuario/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iv-variables-de-usuario/#comments</comments>
		<pubDate>Thu, 02 Jun 2011 10:03:24 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7683</guid>
		<description><![CDATA[Antes de empezar quiero deciros que la próxima semana no habrá clase, ya que estoy en época de exámenes y no me da tiempo a estudiar y a escribiros la siguiente clase. Pero a la siguiente os prometo que tendréis &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iv-variables-de-usuario/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Antes de empezar quiero deciros que la próxima semana no habrá clase, ya que estoy en época de exámenes y no me da tiempo a estudiar y a escribiros la siguiente clase. Pero a la siguiente os prometo que tendréis la clase.</p>
<h2 style="padding-left: 30px">Menú</h2>
<ul>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#resolucion">Resolución de ejercicios</a></span></li>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#teoria">Teoría: Variables de usuario</a></span></li>
<li><span style="color: #000000;font-size: 18px;line-height: 27px"><a href="#ejercicios">Ejercicios</a></span></li>
</ul>
<p><strong><a name="resolucion"></a>Resolución de ejercicios</strong></p>
<ol>
<li>Crea un script que saque por pantalla con un solo echo, lo llamaremos "mi_informacion":
<ul>
<li>El nombre del ordenador (HOSTNAME)</li>
<li>Debajo la dirección del home</li>
<li>Con una tabulación el número del usuario (UID)</li>
</ul>
</li>
<li>Crea un script que saque por pantalla información del sistema utilizando varios echos, lo llamaremos info_system:
<ul>
<li>El nombre del entorno gráfico (gnome, kde...) (DESKTOP_SESSION)</li>
<li>El tipo de sistema que utilizas (OSTYPE)</li>
<li>La arquitectura instalada (HOSTTYPE)</li>
</ul>
</li>
</ol>
<ol>
<li>Vamos a solucionar el ejercicio 1:<span id="more-7683"></span>
<p class="code">nano mi_informacion</p>
<p class="code">#!/bin/bash #Creado por melenas1414 para La Ventana Muerta #Este script nos dirá información sobre nuestra cuenta de usuario echo -e "Este es el nombre del ordenador: $HOSTNAME\nEste es el directorio Home de mi usuario: $HOME\tEste es el número de usuario: $UID"</p>
<p class="code">chmod u+x mi_informacion</p>
<p class="code">./mi_informacion</p>
<p><img class="aligncenter size-full wp-image-7685" src="http://laventanamuerta.net/wp-content/uploads/2011/05/mi_informacion.png" alt="mi informacion Curso básico de creación de scripts en Linux (IV): Variables de usuario" width="655" height="410" title="Curso básico de creación de scripts en Linux (IV): Variables de usuario" /></li>
<li>Ahora el ejercicio 2:
<p class="code">nano info_system</p>
<p class="code">#!/bin/bash #Creado por melenas1414 para La Ventana Muerta #Este script nos dice información sobre el sistema echo "Mi entorno gráfico$DESKTOP_SESSION" echo "Mi tipo de sistema $OSTYPE" echo "Mi arquitectura $HOSTTYPE"</p>
<p class="code">chmod u+x info_system</p>
<p class="code">./info_system</p>
<p><img class="aligncenter size-full wp-image-7692" src="http://laventanamuerta.net/wp-content/uploads/2011/05/info_system.png" alt="info system Curso básico de creación de scripts en Linux (IV): Variables de usuario" width="655" height="410" title="Curso básico de creación de scripts en Linux (IV): Variables de usuario" /></li>
</ol>
<p><a href="#menu">Volver al menú</a> <a name="teoria"></a></p>
<h3><strong>Teoría: Variables de usuario</strong></h3>
<p>La semana pasa expliqué que existen las variables de entorno que son las que ya están creadas por defecto, las variables son un alias que guarda un valor, en las variables de entorno el valor ya está creado, pero en las variables de usuario eres tú quien crea esa variable y el valor que tiene dentro.  Para definir una variable de usuario debemos poner un alias de menos de 20 caracteres o si son más cada 20 caracteres de llevar una barra baja "_", las variables de usuario no puede llegar como primer carácter un número porque se confundirá con los parámetros que vamos a ver en el siguiente punto. Después del nombre debemos ponerle un igual y a continuación el valor. Debe ir entre comillas (") si lo que se va a insertar en la variable es más de una palabra, o sea una frase.  Para llamar luego a la variable en un echo o en un futuro un if, etc., debemos poner el signo del $ y luego la variable (recordad que si lo que queremos es que no saque el signo $ u otros debemos poner antes la barra invertida "\"). Veamos un ejemplo:</p>
<p class="code">$nano variableprueba</p>
<p class="code">#!/bin/bash #Creado por melenas1414 para La Ventana Muerta #Probando uso de variables de usuario frase="Yo me paso normalmente por la Ventana Muerta para ver que hay nuevo" echo "$frase"</p>
<p class="code">$chmod u+x variableprueba</p>
<p class="code">$./variableprueba Yo me paso normalmente por la Ventana Muerta para ver que hay nuevo</p>
<p>Las variables de usuario también pueden cambiar una variable de entorno al poner como alias el mismo alias de una variable de entorno, pero solo durante la ejecución del script.  También podemos insertar el resultado de sumas, restas, multiplicaciones o divisionales de variables con variables, número con números o números con variables. Para ello lo que debemos hacer es poner el alias de la nueva variable, un igual y después un signo de $[ las dos variables (se puede poner con un $ antes del alias) o números , la operación (el de la multiplicación es *) y el otro operando  y terminamos con otro ], entre medias no debe haber ningún espacio. Sintaxis de una suma:</p>
<p class="code">alias=$[operando1+operando2]</p>
<p>Hay otras formas de hacer eso mismo, pero para mí esa es la más sencilla y funciona bien. También se pueden insertar un comando pero esto irá en la próxima clase, que veremos los parámetros y los comandos. <a href="#menu">Volver al menú</a></p>
<h3><strong><a name="ejercicios"></a>Ejercicios</strong></h3>
<p>Esta semana os voy a poner dos ejercicios, espero que sean sencillos:</p>
<ol>
<li>Creáis un script llamado cuentas, este script debe sacar por pantalla el resultado de la suma, resta, multiplicación y división de estos dos número: 34 y 12. Estos números deben ser metidos como variables.</li>
<li>Creáis un script llamado varusu, este script estará compuesto por tres variables que luego deben sacar por pantalla los siguientes datos:
<ol>
<li>Tu nombre</li>
<li>Tu web favorita, nombre y dirección web (uno seguido del otro con espacios)</li>
<li>Y tus exploradores de internet favoritos (uno seguido del otro con espacios)</li>
</ol>
</li>
</ol>
<p><a href="#menu">Volver al menú</a></p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iv-variables-de-usuario/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno</title>
		<link>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iii-echo-y-variables-de-entorno/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iii-echo-y-variables-de-entorno/#comments</comments>
		<pubDate>Thu, 26 May 2011 07:00:36 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7642</guid>
		<description><![CDATA[Resolución del ejercicio 2: "Hacer un holamundo2 que saque por pantalla dos holasmundos en la misma línea pero utilizando dos echos" Es muy sencillo: (Recordad entrar en la carpeta donde tengáis los scripts) $nano holamundo2 #!/bin/bash #Creado por Melenas1414 de &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iii-echo-y-variables-de-entorno/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Resolución del ejercicio 2: "Hacer un holamundo2 que saque por pantalla dos holasmundos en la misma línea pero utilizando dos echos"</p>
<p>Es muy sencillo:</p>
<p>(Recordad entrar en la carpeta donde tengáis los scripts)</p>
<p class="code">$nano holamundo2</p>
<p class="code">#!/bin/bash<br />
#Creado por Melenas1414 de La Ventana Muerta<br />
#Este script saca por pantalla dos textos "Hola Mundo" pero con dos echos y en una misma línea<br />
#-n sirve para que no haga salto de línea, lo explicaremos en la teoría.<br />
echo -n "Hola Mundo"<br />
echo "Hola Mundo"</p>
<p class="code">$ chmod u+x holamundo2</p>
<p class="code">$ ./holamundo2</p>
<p><span id="more-7642"></span><br />
<img class="aligncenter size-full wp-image-7661" src="http://laventanamuerta.net/wp-content/uploads/2011/05/holamundo2.png" alt="holamundo2 Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" width="655" height="393" title="Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" /><br />
Después de la explicación al ejercicio de la semana pasada, sigamos con el curso.</p>
<p>Hoy toca las opciones de echo y añadimos las variables de entorno, para que los ejercicios tengan algo más complicado. Bueno empecemos:</p>
<p><strong>Echo</strong></p>
<p>Echo es un comando que nos saca lo que pongamos a continuación en pantalla, se puede utilizar sin utilizar ningún comando (si sabéis algo de Ms-Dos es el mismo comando) como ya hemos visto en los ejercicios anteriores. Este sería un ejemplo de su uso dentro de la terminal:</p>
<p><img class="aligncenter size-full wp-image-7660" src="http://laventanamuerta.net/wp-content/uploads/2011/05/echo1.png" alt="echo1 Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" width="655" height="393" title="Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" /></p>
<p>La estructura del echo es así:</p>
<p>echo [opciones] [cadenas, variables...]</p>
<p>El echo tiene dos opciones nada más:</p>
<ul>
<li>-n: esta opción, que aparece en el ejercicio, sirve para que no haya salto de línea en la siguiente línea que escribas.</li>
<li>-e: esta opción se utiliza para habilitar interpretación de "\" a la hora de poner los siguientes caracteres:
<ul>
<li>\a alerta (campana) {comprobar}</li>
<li>\b sirve para poner espacios, no es muy utilizado</li>
<li>\c suprime el carácter de nueva línea</li>
<li>\n sirve para el salto de línea</li>
<li>\r sirve para suprimir lo que hayamos puesto antes de ese carácter</li>
<li>\t sirve para tabular</li>
</ul>
</li>
</ul>
<p>Esta es la estructura del echo, pero no todo acaba aquí.</p>
<ul>
<li>Uso de comillas: Los textos que pongas después del echo, los puedes poner también con comillas ("), ésto hace que quede más limpio.</li>
<li>Uso de "\": Utilizamos esta barra, a parte de lo que hemos indicado antes, también se utiliza para poner los caracteres que son usados por el bash, como $ que es usada para las variables. Con un ejemplo lo veréis mejor:<br />
<img class="aligncenter size-full wp-image-7664" src="http://laventanamuerta.net/wp-content/uploads/2011/05/echo2.png" alt="echo2 Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" width="655" height="393" title="Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" /> como podéis ver en la imagen si el $ no tiene nada detrás no hay problema porque no lo identifica como variable, pero al ponerle algo delante si que lo entiende como variable y sólo saca aquello que no identifica como variable. En este caso al ser $200 identifica como variable $2 y lo demás como no variable, estas variables las explicaremos en la prima entrega. También veis que con comillas o sin ellas el resultado es el mismo.</li>
</ul>
<p>En los scripts para utilizar el echo solo hay que poner en una línea el echo y lo que quieras sacar por pantalla, como hemos visto en los anteriores ejercicios.</p>
<p><strong><span style="line-height: 24px">Variables de Entorno</span></strong></p>
<p><span style="line-height: 24px">Una vez que hemos explicado el echo pasamos a las variables. Como os he dicho antes con el echo se pueden imprimir variables. Las variables son un alias que se puede insertar un valor, un tipo de estas variables son las de entorno, estas variables se encuentran directamente en el sistema y se puede llamar con un simple $ y el nombre de la variable. Puedes saber las variables que dispones poniendo en la terminal set | more (el more es para que vayan saliendo poco a poco):</span></p>
<p><span style="line-height: 24px"><img class="aligncenter size-full wp-image-7666" src="http://laventanamuerta.net/wp-content/uploads/2011/05/variablesdeentorno1.png" alt="variablesdeentorno1 Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" width="655" height="393" title="Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" />Para utilizar estas variables en el script solo tenemos que poner el echo y luego $[nombre de la variable]. Hay que tener en cuenta que distingue entre mayúsculas y minúsculas, por lo tanto si pones $path no te sale lo mismo que si pones $PATH:</span></p>
<p><span style="line-height: 24px"><img class="aligncenter size-full wp-image-7667" src="http://laventanamuerta.net/wp-content/uploads/2011/05/variablesdeentorno2.png" alt="variablesdeentorno2 Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" width="655" height="393" title="Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" /></span></p>
<p>Vamos a hacer un scripts que diga quien es el usuario que ha iniciado sesión:</p>
<ol>
<li>Vamos a llamar al script, quien_soy:
<p class="code">$ nano quien_soy</p>
<p class="code">#!/bin/bash<br />
#Creado por melenas1414 para La Ventana Muerta<br />
#Este script nos dice que nombre tenemos en la sesión que hemos iniciado<br />
echo "Yo soy $LOGNAME"</p>
</li>
<li>
<p class="code">$ chmod u+x quien_soy</p>
</li>
<li>
<p class="code">$ ./quien_soy</p>
<p><img class="aligncenter size-full wp-image-7668" src="http://laventanamuerta.net/wp-content/uploads/2011/05/variablesdeentorno3.png" alt="variablesdeentorno3 Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" width="655" height="393" title="Curso básico de creación de scripts en Linux (III): Echo y Variables de Entorno" /></li>
</ol>
<p>Creo que con esto ya sabéis de variables de entorno y de echos lo suficiente para realizar estos ejercicios (recordad poner los comentarios):</p>
<ol>
<li>Crea un script que saque por pantalla con un solo echo, lo llamaremos "mi_informacion":
<ul>
<li>El nombre del ordenador (HOSTNAME)</li>
<li>Debajo la dirección del home</li>
<li>Con una tabulación el número del usuario (UID)</li>
</ul>
</li>
<li>Crea un script que saque por pantalla información del sistema utilizando varios echos, lo llamaremos "info_system":
<ul>
<li>El nombre del entorno gráfico (gnome, kde...) (DESKTOP_SESSION)</li>
<li>El tipo de sistema que utilizas (OSTYPE)</li>
<li>La arquitectura instalada (HOSTTYPE)</li>
</ul>
</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-iii-echo-y-variables-de-entorno/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Curso básico de creación de scripts en Linux (II): Shell y Comentarios</title>
		<link>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-ii/</link>
		<comments>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-ii/#comments</comments>
		<pubDate>Thu, 19 May 2011 07:00:30 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[GNU/Linux]]></category>
		<category><![CDATA[Curso]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[scripts]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7613</guid>
		<description><![CDATA[Otra semana ya ha pasado, espero que todos los que estéis siguiendo el curso hayáis conseguido hacer el ejercicio de la semana pasada, pero para los que no hayáis sido capaces de hacerlo os dejo la solución: Abrimos la terminal &#8230; <a href="http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-ii/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Otra semana ya ha pasado, espero que todos los que estéis siguiendo el curso hayáis conseguido hacer el ejercicio de la semana pasada, pero para los que no hayáis sido capaces de hacerlo os dejo la solución:</p>
<ol>
<li>Abrimos la terminal</li>
<li>Entramos en la carpeta de los scripts:</li>
<p class="code">cd scriptslaventanamuerta</p>
<li>Estos dos primeros pasos me los saltaré en las próximos clases.</li>
<li>Ahora abrimos el programa de edición de texto con el nombre "holamundo":</li>
<p class="code">nano holamundo</p>
<li>Dentro de ahí escribimos:</li>
<p class="code">echo "Hola Mundo"</p>
<li>Guardamos y salimos (ctrl+x)</li>
<li>Damos permisos de ejecución al archivo (chmod u+x holamundo)</li>
<li>Y lo ejecutamos (./holamundo) y este es el resultado:</li>
<p><img class="aligncenter size-full wp-image-7615" src="http://laventanamuerta.net/wp-content/uploads/2011/05/Holamundo.png" alt="Holamundo Curso básico de creación de scripts en Linux (II): Shell y Comentarios" width="667" height="428" title="Curso básico de creación de scripts en Linux (II): Shell y Comentarios" /></ol>
<p>Después de esta explicación del ejercicio de la semana pesada, daremos la clase de hoy.</p>
<p>Hoy hablaremos de la forma de indicar el shell y los comentarios (voy a empezar poco a poco para que no os asustéis):<span id="more-7613"></span></p>
<h3>Shell</h3>
<p>Para indicar el shell que vamos a utilizar al principio del scripts debemos poner #! y la dirección del shell, principalmente vamos a utilizar este:</p>
<p class="code">#!/bin/bash</p>
<p>Os daréis cuenta que al guardar el script os aparecerán colores y demás, si utilizáis nano, esto nos ayudará a saber si hemos escrito algo mal y además a guiarnos mejor por el script.</p>
<p><strong><span style="color: #ff0000">Actualización</span></strong></p>
<p>Me han comentado que explique lo que es la shell, así que os voy a explicar que es la shell:</p>
<blockquote><p>Una <strong>Shell de Unix</strong> o también <strong>shell</strong>, es el término usado en <a title="Informática" href="http://es.wikipedia.org/wiki/Inform%C3%A1tica">informática</a> para referirse a un <a title="Intérprete de comandos" href="http://es.wikipedia.org/wiki/Int%C3%A9rprete_de_comandos">intérprete de comandos</a>, el cual consiste en la interfaz de usuario tradicional de los sistemas operativos basados en <a title="Unix" href="http://es.wikipedia.org/wiki/Unix">Unix</a> y similares como <a title="GNU/Linux" href="http://es.wikipedia.org/wiki/GNU/Linux">GNU/Linux</a>.</p>
<p style="text-align: right"><a href="http://es.wikipedia.org/wiki/Shell_de_UNIX" target="_blank">Wikipedia </a></p>
</blockquote>
<p style="text-align: left">O sea la Shell sirve para que la terminal entienda los comandos que le ponemos, como ls (listar una carpeta), cp (copiar un archivo) o rm (borrar un archivo). Gracias a la shell podremos poner comandos dentro del script sin que produzca problemas.</p>
<h3>Comentarios</h3>
<p>Para poner comentarios debemos poner # seguido del comentario, esto siempre después del shell, los comentarios no saldrán a la hora de ejecutar el script, sólo serán visibles cuando editemos el script. Lo principal que se pone en los comentarios es por quién está creado y para qué sirve, si es muy extenso en cada zona pon un comentario de lo que hace esa zona y al principio del todo lo que hace en general, esto te ayudará a que cuando abras el script dentro de un tiempo sepas para qué sirva. Ejemplo con el ejercicio de la semana pasada:</p>
<p class="code">#!/bin/bash<br />
#Creado por Melenas1414 de La Ventana Muerta<br />
#Este script saca por pantalla el texto "Hola Mundo"<br />
echo "Hola Mundo"</p>
<p>Con esta pequeña explicación de los scripts concluimos la clase de hoy, pero para la próxima semana tendréis como ejercicios poner comentarios al script "holamundo" y hacer un holamundo2 que saque por pantalla dos holasmundos en la misma línea pero utilizando dos echos, la próxima semana explicaremos cómo hacerlo y os explicaremos las distintas opciones del <em>echo</em>.</p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/curso-basico-de-creacion-de-scripts-en-linux-ii/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>¿Qué hago con mi Ubuntu?</title>
		<link>http://laventanamuerta.net/%c2%bfque-hago-con-mi-ubuntu/</link>
		<comments>http://laventanamuerta.net/%c2%bfque-hago-con-mi-ubuntu/#comments</comments>
		<pubDate>Mon, 16 May 2011 07:00:02 +0000</pubDate>
		<dc:creator>melenas1414</dc:creator>
				<category><![CDATA[Software libre]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[brasero]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[chrome os]]></category>
		<category><![CDATA[dropbox]]></category>
		<category><![CDATA[gimp]]></category>
		<category><![CDATA[gnu/linux]]></category>
		<category><![CDATA[jdownloader]]></category>
		<category><![CDATA[LibreOffice]]></category>
		<category><![CDATA[Pidgin]]></category>
		<category><![CDATA[programas]]></category>
		<category><![CDATA[skype]]></category>
		<category><![CDATA[software]]></category>
		<category><![CDATA[Spotify]]></category>
		<category><![CDATA[ubuntu one]]></category>
		<category><![CDATA[Unity]]></category>
		<category><![CDATA[urban terror]]></category>
		<category><![CDATA[vlc]]></category>

		<guid isPermaLink="false">http://laventanamuerta.net/?p=7604</guid>
		<description><![CDATA[Hace unos días, un twittero, @converso72, que escribe en el blog www.vidasenred.com, me propuso decir qué hago con mi Ubuntu, los programas que utilizo y demás. Por eso en esta entrada os diré que programas utilizo principalmente en mi ubuntu: El &#8230; <a href="http://laventanamuerta.net/%c2%bfque-hago-con-mi-ubuntu/">Seguir leyendo <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Hace unos días, un twittero, <a href="http://twitter.com/Converso72" target="_blank">@converso72</a>, que escribe en el blog <a href="http://vidasenred.com" target="_blank">www.vidasenred.com</a>, me propuso decir qué hago con mi Ubuntu, los programas que utilizo y demás. Por eso en esta entrada os diré que programas utilizo principalmente en mi ubuntu:<span id="more-7604"></span></p>
<ol>
<li>El primero <a href="http://www.google.com/chrome?hl=es" target="_blank">Chrome</a>, lo utilizo como mi navegador principal, su navegación es fluida y rápida, rapidez al abrir, una integración genial con gmail (normal es de google <img src='http://laventanamuerta.net/wp-includes/images/smilies/icon_razz.gif' alt="icon razz ¿Qué hago con mi Ubuntu?" class='wp-smiley' title="¿Qué hago con mi Ubuntu?" /> ), y lo mejor y que más me gusta es la sincronización de extensiones, temas, contraseñas, etc. Aunque Firefox también la tiene es más complicada de utilizar ya que todo va por claves, la sencillez de chrome al solo necesitar una cuenta de google la convierte, para mí, en el mejor programa de sincronización de navegadores, por no hablar de <a href="http://www.google.com/chromeos/" target="_blank">chrome OS</a>, aunque todavía en Betas y demás cuando lo probé dispuse de todas mis extensiones, mis contraseñas y demás al iniciar mi cuenta en el programa.</li>
<li><a href="http://www.pidgin.im/" target="_blank">Pidgin</a>, aunque está Empathy por defecto, nunca me ha llegado a convencer del todo, este gran cliente de mensajería permite tener casi todas las cuentas de chat en un solo programa, para skype hace falta un plugin, tiene integración con el chat de facebook, lo que permite que no tengas que estar hablando por el chat de facebook del navegador. Dispone también de muchos plugins y temás.</li>
<li><a href="http://www.spotify.com/es/" target="_blank">Spotify Linux</a>, como tengo cuenta premium de este me lo puedo permitir, las últimas versiones que han sacado de este fabuloso programa de música le queda poco que envidiar del de windows, permite sincronización con el equipo, compartir con las redes sociales, sincronizar tus amigos a facebook, listas, radios, está en español y muchísimas cosas más, aunque esta opción no sea de spotify sino de ubuntu os la diré también permite controlar la lista de reproducción desde el icono de audio de la barra superior, como si se tratase de Banshee, este ha sido uno de los motivos por los que he dejado de utilizar la versión de wine la verdad.</li>
<li><a href="http://laventanamuerta.net/instala-la-ultima-version-de-gimp/" target="_blank">Gimp</a>, este gran programa de edición de imagen, con la interfaz en desarrollo y millones de plugins para mí es el mejor programa de linux de edición de imagen. He utilizado pocas veces photoshop, dado a que mi sistema principal es ubuntu/arch según la época y los "adorables" jefazos de Adobe no han dispuesto una versión para Linux, y no puedo decir cual es mejor, pero sólo deciros que para mí gimp es muy sencillo de utilizar y deberían enseñarlo en cualquier clase de plástica que tienen en los institutos como una forma de actualizar la programación.</li>
<li><a href="http://www.videolan.org/vlc/" target="_blank">VLC</a>, lo utilizo principalmente para ver películas, dispone de opciones para modificar la imagen y el audio, poner subtitulos, etc, Permite abrir infinidad de codificaciones de vídeos y música (o sea extensiones) y tiene también bastantes temas, pero yo utilizo el de por defecto ni me complico la vida. No suelo ver muchas pelis en hd pero alguna si que he visto y se ven genial sin parones ni nada, cabe destacar que tengo una tarjeta Nvidia de 1 gb.</li>
<li><a href="http://laventanamuerta.net/instalar-libreoffice-3-3-0-en-ubuntu-y-archlinux/" target="_blank">Libre Office</a>, desde que salió lo tengo instalado, lo utilizo tanto para presentaciones, utilizando el modo moderador (una genialidad que creó Sun antes de que la comprase la malvada ORACLE :p), con esto consigo controlar una presentación desde mi pantalla con el segundo monitor extendido, como para crear documentos de texto... La única pega que tiene es que al ir a imprimir y elegir solo algunas hojas se tarda en cargar, pero por lo demás es perfecto.</li>
<li><a href="http://www.dropbox.com/" target="_blank">Dropbox</a>, para mí también es uno de los mejores programas de sincronización de archivos, me permite disponer de los archivos y en cualquier parte con una conexión a Internet, para llevar los apuntes del instituto es lo mejor, ya que no tengo que estar con pendrivers ni nada, abro la página de Internet subo lo que quiero y listo. Además dispone de una sincronización en Lan, o sea, que si tienes otro equipo en la red de tu casa con la misma cuenta de dropbox en vez de bajar los archivos de Internet, cuando vayas a sincronizar, utiliza la Lan para bajarselos desde el otro ordenador de la casa.</li>
<li><a href="https://one.ubuntu.com/" target="_blank">Ubuntu One</a>, lo he empezado a utilizar ahora, desde la última versión de Ubuntu, es mejor dropbox ya que te permite fácilmente subir archivo a la nube desde Internet, pero la integración es superior, lo utilizo principalmente para disponer de una copia de seguridad de documentos importantes.</li>
<li><a href="http://www.skype.com" target="_blank">Skype</a>, este es mi principal programa de llamadas desde el ordenador, lo utilizo bastante y además de dispone de una opción para compartir pantalla, ya que tengo una buena subida, casi 1 mb, pues puedo ver con otra persona películas. Lo malo que tiene es que la interfaz está muy descuidad y parece un programa de los años 90 comparado con el que dispone windows.</li>
<li><a href="http://www.gnome.org/projects/brasero/" target="_blank">Brasero</a>, aunque no grabo muchos cds cuando lo hago lo hago principalmente con este, es sencillo y de momento no me ha producido ningún error.</li>
<li><a href="http://laventanamuerta.net/instalar-jdownloader-desde-repositorios/" target="_blank">Jdownloader</a>, este es mi principal gestor de descargas, aunque me da problemas algunas veces cuando veo alguna película, java siempre se come toda la memoria, por lo demás es muy bueno.</li>
<li><a href="http://www.urbanterror.info/" target="_blank">Urban Terror</a>, no suelo jugar mucho al ordenador, pero cuando juego suelo jugar al Urban Terror, un juego estilo Counter pero libre y mejor.</li>
<li>Y por último la barra superior de Unity, para mí las opciones que permite son de lo mejor que he visto para un pc, no se puede añadir ninguna opción más pero las que hay merecen la pena, dispone de un icono para algunas aplicaciones, como dropbox, que deban estar en la barra de estado, las opciones de audio son fabulosas, control de audio general y luego control de listas de reproducción de los programas de música, sólo le añadiría la opción de control de volumen de los distintos medios. Dispone de un botón sólo para el control de Redes Sociales, Chat, con buena integración con pidgin, y correo. El calendario, que todavía no he conseguido sincronizar con gmail (me pide un captcha, pero no me aparece), merece la pena, pero no lo suelo utilizar ya que suelo hacer los eventos desde el mismo calendario de gmail. Por último el botón de control de sesión, desde él te puedes poner un mensaje en las distintas redes que tengas configuradas, un estado en los chats que tengas configurados, y la configuración de los mismos.</li>
</ol>
<p style="text-align: justify;">Creo que con esto termino con mis programas principales que utilizo en ubuntu, no dudéis en contar los vuestros.</p>
]]></content:encoded>
			<wfw:commentRss>http://laventanamuerta.net/%c2%bfque-hago-con-mi-ubuntu/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

