<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2487835791472661588</id><updated>2011-07-28T13:36:21.899-05:00</updated><category term='Redes'/><category term='linux'/><category term='PROGRAMACIÓN EN JAVA'/><category term='Base de datos II.'/><category term='PROGRAMACIÓN EN PROLOG'/><category term='manuales'/><category term='EN &quot;C&quot;.'/><category term='compiladores'/><category term='PROGRAMACIÓN EN &apos;C&apos;.'/><category term='PROGRAMACIÓN'/><category term='ubuntu'/><category term='ING. EN SISTEMAS COMPUTACIONALES'/><category term='PROGRAMACIÓN EN MS-DOS'/><title type='text'>*****EL RINCON DE HATAKE KAKASHI*****</title><subtitle type='html'>ESTE BLOG ES UN PEQUEÑO RINCÓN RELACIONADO A SISTEMAS COMPUTACIONALES, CON RELATIVA PROPORCIÓN AL MUNDO DE LA INFORMÁTICA, PROGRAMAS RECOMENDADOS, TUTORIALES, PROGRAMITAS, TIPS, ETC.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://elrincondemerida.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>40</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6116593806661490760</id><published>2010-06-05T16:39:00.004-05:00</published><updated>2010-06-05T17:29:53.256-05:00</updated><title type='text'>RECUPERAR EL GRUB DE UBUNTU.</title><content type='html'>&lt;div style="text-align: justify;"&gt;A continuación describiremos los pasos para poder recuperar el GRUB de ubuntu de una manera rápida y sencilla, usando simplemente un Live CD de ubuntu (cualquier versión anterior de la 9.10).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BfXOb8WZwPI/TArFbjMZofI/AAAAAAAAAes/XrPBJBKCi_o/s1600/grub.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 234px;" src="http://4.bp.blogspot.com/_BfXOb8WZwPI/TArFbjMZofI/AAAAAAAAAes/XrPBJBKCi_o/s400/grub.png" alt="" id="BLOGGER_PHOTO_ID_5479408973744022002" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Seguir estos sencillos pasos:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;1.-&lt;/span&gt;&lt;span style="font-size:100%;"&gt; &lt;/span&gt;&lt;span style="font-size:100%;"&gt;Configurar la BIOS para que arranque desde el CD.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;2.- Elegimos la primera opción que nos da (probar ubuntu sin instalar).&lt;/span&gt;&lt;br /&gt;  	&lt;meta equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt; 	&lt;title&gt;&lt;/title&gt; 	&lt;meta name="GENERATOR" content="OpenOffice.org 3.2  (Linux)"&gt; 	&lt;style type="text/css"&gt; 	&lt;!-- 		@page { margin: 2cm } 		P { margin-bottom: 0.21cm } 	--&gt; 	&lt;/style&gt;  &lt;/div&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;3.- Abrimos una terminal (también llamada consola).&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;4. Ejecutamos el interprete del comando grub: &lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;sudo grub&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;2. Busca donde está la partición de ubuntu:&lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt; find /boot/grub/stage1&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;3. Poner el valor anterior devuelto: &lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;root (hdx,y)&lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;4. Instala el grub en nuestro 1° disco duro (hd0), que es con el que   inicia la computadora:&lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt; setup (hd0) &lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="margin-bottom: 0cm; text-align: justify;"&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;5. Salimos del interprete de comandos grub: &lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;quit&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="text-align: justify;"&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;Donde &lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;&lt;b&gt;X&lt;/b&gt;&lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt; es el número de disco rígido, y &lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt;&lt;b&gt;Y&lt;/b&gt;&lt;/span&gt;&lt;span style="font-family:Chancery Uralic;font-size:100%;"&gt; es el número de partición. Este sistema difiere un poco del usado para montar las particiones en GNU/Linux; ambos son un único número decimal y comienzan en 0; por ejemplo: &lt;/span&gt; &lt;/p&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;hd0&lt;/b&gt;: es el primero disco 	duro completo, al igual que &lt;i&gt;hda&lt;/i&gt; o &lt;i&gt;sda&lt;/i&gt;&lt;/span&gt;  	&lt;/p&gt; 	&lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;hd0,0&lt;/b&gt;: es la primera 	partición del primer disco duro, al igual que &lt;i&gt;hda1&lt;/i&gt; o &lt;i&gt;sda1&lt;/i&gt;&lt;/span&gt; 		&lt;/p&gt; 	&lt;/li&gt;&lt;li&gt;&lt;p style="margin-bottom: 0cm;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;hd0,1&lt;/b&gt;: es la segunda 	partición del primer disco duro, al igual que &lt;i&gt;hda2&lt;/i&gt; o &lt;i&gt;sda2&lt;/i&gt;&lt;/span&gt; 		&lt;/p&gt; 	&lt;/li&gt;&lt;li&gt;&lt;p&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;hd1,2&lt;/b&gt;: es la tercera partición del segundo disco 	duro, al igual que &lt;i&gt;hdb3&lt;/i&gt; o &lt;i&gt;sdb3&lt;/i&gt;&lt;/span&gt;  	&lt;/p&gt; &lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt; &lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;El primer disco duro del GRUB es el primer disco duro maestro, el segundo es el primer disco duro esclavo, el tercero es el segundo disco duro maestro, y así sucesivamente.  &lt;/span&gt;&lt;/p&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6116593806661490760?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6116593806661490760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6116593806661490760'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2010/06/recuperar-el-grub-de-ubuntu.html' title='RECUPERAR EL GRUB DE UBUNTU.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_BfXOb8WZwPI/TArFbjMZofI/AAAAAAAAAes/XrPBJBKCi_o/s72-c/grub.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-3429380038628083143</id><published>2010-05-31T21:14:00.022-05:00</published><updated>2010-06-04T18:40:24.879-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ubuntu'/><title type='text'>INSTALACIÓN DE UBUNTU 10.04 DESDE USB.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/TARykj2GYpI/AAAAAAAAAck/lOgdYzOLmBA/s1600/ubuntu01.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 203px; height: 72px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/TARykj2GYpI/AAAAAAAAAck/lOgdYzOLmBA/s320/ubuntu01.png" alt="" id="BLOGGER_PHOTO_ID_5477629019212374674" border="0" /&gt;&lt;/a&gt;A continuación veremos como instalar Ubuntu 10.04, el famoso Lucyd Linx desde un USB, para aquellos que tengan una Netbook y quieran ahorrarse dinero en comprar una unidad CD/DVD externa (aunque tener una seria grandioso). &lt;strong&gt;&lt;/strong&gt;  Además es una buena forma de instalación  para aquellos que no nos gusta pedir el CD y preferimos bajar la imagen .ISO.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Antes de comenzar es necesario tener a la mano (en la computadora) lo siguiente:&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;1.-La imagen .ISO de ubuntu 10.04. (guia ubuntu te la proporciona).&lt;br /&gt;2.-La aplicación Unetbooting.&lt;br /&gt;3.-El programa Partition Magic. (lo recomiendo pero es gusto del usuario).&lt;br /&gt;4.-Memoria USB. (Mínimo de 1 GB).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Particionar nuestro disco duro:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;Usando el programa Partition Magic, procederemos a darle un espacio suficiente a ubuntu para que pueda quedar instalado en nuestro equipo. La partición donde instalaremos Ubuntu (&lt;b&gt;/&lt;/b&gt;)  debe tener al menos 2  GB. Si pretendemos instalar más programas es recomendable darle un poco  más de espacio. Para un uso normal, unos 7 u 8 GB estarán bien.  &lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Pasos para montar la imagen .ISO a la memoria USB.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1.-Utilizando Unetbooting elegimos la segunda opción que nos da la aplicación, la cual es elegir una imagen .ISO, la cual buscaremos en nuestra computadora dando clic al botón con los puntos seguidos.&lt;br /&gt;&lt;br /&gt;2.-Le damos aceptar y esperamos a que toda la imagen .ISO pase a nuestra memoria para hacer booteable nuestro USB.&lt;br /&gt;&lt;br /&gt;3.-Reiniciamos sin sacar la memoria.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt; Al reiniciar el equipo es necesario dejar configurable la BIOS para que pueda arrancar desde la USB. En las NetBook nos indica que tecla presionar al encender la computadora para entrar al SETUP, y en la pestaña boot elegimos nuestro USB; para salir dejando nuestros cambios guardados presionamos la tecla F10.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Instalar ubuntu paso a paso: &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;strong&gt;Paso 1&lt;/strong&gt;: La primer pantalla es para elegir el idioma y  si quieren probar el livecd o directamente instalar Ubuntu 10.04. Eligen  instalar.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BfXOb8WZwPI/TAmEhNbUb1I/AAAAAAAAAdE/G7rbd4Dj-Fw/s1600/Pantallazo0.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_BfXOb8WZwPI/TAmEhNbUb1I/AAAAAAAAAdE/G7rbd4Dj-Fw/s400/Pantallazo0.jpg" alt="" id="BLOGGER_PHOTO_ID_5479056127747714898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;strong&gt;Paso 2&lt;/strong&gt;: Elijan su ubicación, y de paso les muestra la  hora que tiene esa ubicación.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmEvXkmJ5I/AAAAAAAAAdM/lgINpj7ZGig/s1600/Pantallazo02.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 283px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmEvXkmJ5I/AAAAAAAAAdM/lgINpj7ZGig/s400/Pantallazo02.jpg" alt="" id="BLOGGER_PHOTO_ID_5479056370989148050" border="0" /&gt;&lt;/a&gt;&lt;strong&gt;&lt;br /&gt;&lt;/strong&gt;&lt;div style="text-align: justify;"&gt;&lt;strong&gt;Paso 3&lt;/strong&gt;: Elegir la distribución de teclado. Recomiendo  elegir “Latinoamerica” pero con la opción incluir tilde muerta y les reconocerá la "ñ".&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BfXOb8WZwPI/TAmE9Xw7LiI/AAAAAAAAAdU/89lqISHpJj8/s1600/Pantallazo03.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 299px;" src="http://4.bp.blogspot.com/_BfXOb8WZwPI/TAmE9Xw7LiI/AAAAAAAAAdU/89lqISHpJj8/s400/Pantallazo03.jpg" alt="" id="BLOGGER_PHOTO_ID_5479056611559026210" border="0" /&gt;&lt;/a&gt;&lt;strong&gt;Paso 4&lt;/strong&gt;: Y aquí empieza la parte que los complica a  todos. El particionado. No debería complicarles tanto.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://paraisolinux.com/wp-content/uploads/2010/04/Pantallazo-2.png"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmFOMIt0zI/AAAAAAAAAdc/rD6Tbe31JrA/s1600/Pantallazo04.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 282px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmFOMIt0zI/AAAAAAAAAdc/rD6Tbe31JrA/s400/Pantallazo04.png" alt="" id="BLOGGER_PHOTO_ID_5479056900495364914" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;NOTA:&lt;/span&gt;&lt;strong style="font-weight: bold;"&gt;&lt;/strong&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;Ahora para particionar el disco duro, vamos a ver tres posibilidades:&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;1.-Instalar Ubuntu 10.04 junto a los otros (Windows XP, Vista o Windows  7), eligiendo entre ellos al arrancar el equipo (sencillo pero poco  configurable).&lt;br /&gt;&lt;br /&gt;2.-Borrar y usar el disco entero. Elimina cualquier otro sistema  operativo del disco duro e instala sólo Ubuntu 10.04.&lt;br /&gt;&lt;br /&gt;3.-Especificar particiones manualmente (avanzado). Esta opción es la  más recomendable y en este caso usaremos si queremos sacar el máximo rendimiento a Ubuntu y  también permite instalarlo junto a Windows XP, Vista o Windows 7.&lt;/div&gt;&lt;p style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt; Además de eso es importante conocer cuales son las &lt;strong style="font-weight: normal;"&gt;particiones  necesarias y recomendadas en Linux&lt;/strong&gt;:&lt;/p&gt; &lt;ul style="text-align: justify;"&gt;&lt;li&gt;En principio solo necesitas 2 particiones: una raíz que se simboliza  con la barra “/” y una partición de intercambio. La raíz es donde se  instala todo el sistema GNU/Linux. Y la partición de intercambio es como  una memoria virtual que usa Linux pero en tu disco.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;Lo que yo recomiendo y recomienda la mayoría es hacer una partición  raíz (/), una partición de intercambio y además una partición HOME que  se simboliza “/home”. La partición HOME es parte del sistema GNU/Linux   donde se guardaran todas tus configuraciones de usuario. Es una ventaja  porque cuando vayas a hacer una actualización del sistema no tendrás  que configurar todas tus preferencias (marcadores de firefox, themes,  cuentas de email o msn,etc) de nuevo.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Elegimos la opción 3:&lt;/span&gt; &lt;strong style="font-weight: normal;"&gt;Especificar particiones manualmente (avanzado).&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong style="font-weight: normal;"&gt;&lt;/strong&gt;&lt;/div&gt;&lt;strong style="font-weight: normal;"&gt;&lt;/strong&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BfXOb8WZwPI/TAmFdhVIGvI/AAAAAAAAAdk/vrp-G2Huj30/s1600/Pantallazo05.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 293px;" src="http://2.bp.blogspot.com/_BfXOb8WZwPI/TAmFdhVIGvI/AAAAAAAAAdk/vrp-G2Huj30/s400/Pantallazo05.png" alt="" id="BLOGGER_PHOTO_ID_5479057163882601202" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Aquí va como debe quedar la tabla de particiones:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;1.- Para empezar, necesitamos la partición para la memoria de intercambio,  que será de tipo &lt;i&gt;swap&lt;/i&gt; (Partición lógica )&lt;span style="font-weight: bold;"&gt;.&lt;/span&gt;  &lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt;  Es una costumbre extendida que ésta sea del doble de tamaño que la  memoria RAM disponible. Por ejemplo, si tenemos 256 MB de memoria RAM,  nuestra partición de intercambio será de 512 MB. Sin embargo esto  únicamente es aplicable a tamaños de memoria de hasta 1GB. Si tenemos  más memoria (según Russell Coker) tenemos que utilizar la siguiente  regla: entre 2GB y 4GB, utilizaremos como tamaño del swap la mitad del  valor de la RAM; mientras que si tenemos más de 4 GB, utilizaremos una  swap de sólo 2GB.&lt;br /&gt;&lt;br /&gt;2.- La partición donde instalaremos Ubuntu (&lt;b&gt;/&lt;/b&gt;)  debe tener al menos 2  GB (Partición primaria, ext4).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt; Si pretendemos instalar más programas es recomendable darle un poco más  de espacio. Para un uso normal, unos 7 u 8 GB estarán bien.&lt;br /&gt;&lt;br /&gt;3.- Finalmente, es recomendable guardar los archivos personales (documentos,  imágenes, películas, etc.) en una partición aparte, es decir, /home (Partición lógica, ext4).&lt;br /&gt;&lt;strong style="font-weight: normal;"&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong style="font-weight: normal;"&gt;&lt;/strong&gt;&lt;strong&gt;Paso 5&lt;/strong&gt;: Colocar tu &lt;strong style="font-weight: normal;"&gt;nombre&lt;/strong&gt;, &lt;strong style="font-weight: normal;"&gt;nombre de usuario&lt;/strong&gt;, &lt;strong style="font-weight: normal;"&gt;contraseña&lt;/strong&gt;  (Ubuntu nos recomienda que tenga 8 caracteres como mínimo), &lt;strong style="font-weight: normal;"&gt;nombre  del equipo&lt;/strong&gt; y si queremos entrar automáticamente o no.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BfXOb8WZwPI/TAmICG6GqUI/AAAAAAAAAds/WyKA2touNfg/s1600/Pantallazo07.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 301px;" src="http://2.bp.blogspot.com/_BfXOb8WZwPI/TAmICG6GqUI/AAAAAAAAAds/WyKA2touNfg/s400/Pantallazo07.jpg" alt="" id="BLOGGER_PHOTO_ID_5479059991468353858" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://paraisolinux.com/wp-content/uploads/2010/04/Pantallazo-12.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt; Además tenemos la posibilidad de cifrar el contenido de nuestra carpeta  personal (&lt;em&gt;home&lt;/em&gt;) seleccionando la última opción (solicitar mi  contraseña para iniciar sesión y descifrar mi carpeta personal).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Paso 6&lt;/strong&gt;: Tenemos la posibilidad de importar a Ubuntu los documentos, música,  imágenes y los marcadores o favoritos desde nuestras cuentas de Windows. No lo recomiendo puesto que puedes entrar a la partición de windows desde ubuntu, en la pestaña lugares.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmJBpCbzUI/AAAAAAAAAd0/dXPYCCS1c84/s1600/pantallazo08.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 352px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmJBpCbzUI/AAAAAAAAAd0/dXPYCCS1c84/s400/pantallazo08.png" alt="" id="BLOGGER_PHOTO_ID_5479061082961857858" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://go2.wordpress.com/?id=725X1342&amp;amp;site=sliceoflinux.wordpress.com&amp;amp;url=http%3A%2F%2Fsliceoflinux.files.wordpress.com%2F2010%2F04%2Finstalar-ubuntu-10-04-31.png&amp;amp;sref=http%3A%2F%2Fsliceoflinux.com%2F2010%2F04%2F29%2Finstalar-ubuntu-10-04-paso-a-paso%2F"&gt;&lt;br /&gt;&lt;/a&gt;&lt;strong&gt;Paso 7&lt;/strong&gt;: El último paso antes de que se instale Ubuntu 10.04 en nuestro equipo es  un resumen con los datos que hemos ido completando con el asistente de  instalación. Y si comprobamos que todo es correcto, hacemos clic sobre  el botón &lt;strong style="font-weight: normal;"&gt;Instalar&lt;/strong&gt;. En caso contrario, si quisiéramos  cambiar algo pulsaríamos Atrás.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmJjiGth3I/AAAAAAAAAd8/eolREdphaqU/s1600/pantallazo09.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 373px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmJjiGth3I/AAAAAAAAAd8/eolREdphaqU/s400/pantallazo09.png" alt="" id="BLOGGER_PHOTO_ID_5479061665216300914" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://go2.wordpress.com/?id=725X1342&amp;amp;site=sliceoflinux.wordpress.com&amp;amp;url=http%3A%2F%2Fsliceoflinux.files.wordpress.com%2F2010%2F04%2Finstalar-ubuntu-10-04-32a.png&amp;amp;sref=http%3A%2F%2Fsliceoflinux.com%2F2010%2F04%2F29%2Finstalar-ubuntu-10-04-paso-a-paso%2F"&gt;&lt;br /&gt;&lt;/a&gt;Comenzará a partir de ese momento la instalación de Ubuntu 10.04 en  nuestro equipo. Mientras se instala podremos ir leyendo algunas de sus  características principales.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmLSdscvsI/AAAAAAAAAeE/DOjbGbhJ4rU/s1600/pantallazo10.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 290px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmLSdscvsI/AAAAAAAAAeE/DOjbGbhJ4rU/s400/pantallazo10.png" alt="" id="BLOGGER_PHOTO_ID_5479063570997886658" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://go2.wordpress.com/?id=725X1342&amp;amp;site=sliceoflinux.wordpress.com&amp;amp;url=http%3A%2F%2Fsliceoflinux.files.wordpress.com%2F2010%2F04%2Finstalar-ubuntu-10-04-33.png&amp;amp;sref=http%3A%2F%2Fsliceoflinux.com%2F2010%2F04%2F29%2Finstalar-ubuntu-10-04-paso-a-paso%2F"&gt;&lt;br /&gt;&lt;/a&gt;Una vez que se ha terminado la instalación debemos pulsar el botón &lt;strong style="font-weight: normal;"&gt;Reiniciar  ahora&lt;/strong&gt; para empezar a disfrutar de nuestro nuevo Ubuntu 10.04  Lucid Lynx.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmMbGYvz9I/AAAAAAAAAeM/ZPzK8knhqN8/s1600/pantallazo12.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 305px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmMbGYvz9I/AAAAAAAAAeM/ZPzK8knhqN8/s400/pantallazo12.png" alt="" id="BLOGGER_PHOTO_ID_5479064818871685074" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://go2.wordpress.com/?id=725X1342&amp;amp;site=sliceoflinux.wordpress.com&amp;amp;url=http%3A%2F%2Fsliceoflinux.files.wordpress.com%2F2010%2F04%2Finstalar-ubuntu-10-04-34.png&amp;amp;sref=http%3A%2F%2Fsliceoflinux.com%2F2010%2F04%2F29%2Finstalar-ubuntu-10-04-paso-a-paso%2F"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt; Eso sí, antes de reiniciarse nos pedirá que retiremos la memoria USB y pulsemos Enter cuando lo hayamos hecho.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a style="font-weight: bold;" name="Arrancar el equipo"&gt;Llego la hora de Arrancar el equipo.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a style="font-weight: bold;" name="Arrancar el equipo"&gt;&lt;/a&gt;&lt;a name="Arrancar el equipo"&gt;A partir de ahora, al arrancar el equipo nos aparecerá el siguiente menú  (GRUB) en el que podremos elegir entre arrancar en Ubuntu y arrancar Windows 7 (o el windows que tengamos).&lt;/a&gt;&lt;br /&gt;&lt;a name="Arrancar el equipo"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a name="Arrancar el equipo"&gt;En el menú tenemos 2 líneas que empiezan por Ubuntu pero ¿qué  hace cada una? Y ¿cuál hay que elegir?&lt;/a&gt;&lt;a style="font-weight: bold;" name="Arrancar el equipo"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;a style="font-weight: bold;" name="Arrancar el equipo"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="Arrancar el equipo"&gt;&lt;strong&gt;&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;Ubuntu, Linux 2.6.32-21-generic&lt;/strong&gt;: &lt;/a&gt;arranca Ubuntu de  forma normal. Es la opción que seleccionaremos el 99,9% de las veces.&lt;/li&gt;&lt;/ul&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmNWc4MtEI/AAAAAAAAAeU/xmn7I_MJVzI/s1600/pantallazo13.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 304px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmNWc4MtEI/AAAAAAAAAeU/xmn7I_MJVzI/s400/pantallazo13.png" alt="" id="BLOGGER_PHOTO_ID_5479065838521463874" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://go2.wordpress.com/?id=725X1342&amp;amp;site=sliceoflinux.wordpress.com&amp;amp;url=http%3A%2F%2Fsliceoflinux.files.wordpress.com%2F2010%2F04%2Finstalar-ubuntu-10-04-36.png&amp;amp;sref=http%3A%2F%2Fsliceoflinux.com%2F2010%2F04%2F29%2Finstalar-ubuntu-10-04-paso-a-paso%2F"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Memory test (memtest86+):&lt;/span&gt; realiza un test de memoria. Conviene  usarla si tenemos problemas con el equipo y pensamos que pueda ser de un  fallo de memoria.&lt;/li&gt;&lt;/ul&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Memory test (memtest86+, serial console 115200):&lt;/span&gt; realiza un test de  memoria. De momento, no la he usado nunca.&lt;/li&gt;&lt;/ul&gt;&lt;ul style="text-align: justify;"&gt;&lt;li&gt;&lt;span style="font-weight: bold;"&gt;Windows 7 (loader) (on /dev/sda1): &lt;/span&gt;nos permite arrancar el Windows  que teníamos instalado, en este caso windows 7.&lt;/li&gt;&lt;/ul&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt; En otro articulo se  explicara como configurar el GRUB de ubuntu.&lt;br /&gt;&lt;br /&gt;Una vez que se inicia Ubuntu 10.04 nos encontramos con el GDM en el que seleccionamos nuestro usuario,  escribimos nuestra contraseña y pulsamos Intro (o pulsamos sobre Iniciar  sesión).&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmOUzmAZ5I/AAAAAAAAAec/mENO9SrfJuI/s1600/pantallazo14.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 304px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/TAmOUzmAZ5I/AAAAAAAAAec/mENO9SrfJuI/s400/pantallazo14.png" alt="" id="BLOGGER_PHOTO_ID_5479066909771065234" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://go2.wordpress.com/?id=725X1342&amp;amp;site=sliceoflinux.wordpress.com&amp;amp;url=http%3A%2F%2Fsliceoflinux.files.wordpress.com%2F2010%2F04%2Finstalar-ubuntu-10-04-37.png&amp;amp;sref=http%3A%2F%2Fsliceoflinux.com%2F2010%2F04%2F29%2Finstalar-ubuntu-10-04-paso-a-paso%2F"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;NOTA:&lt;/span&gt; GDM (GNOME Display Manager) es un gestor de acceso para  el X Window System. Es el reemplazo, elaborado por el  proyecto GNOME,  al &lt;span class="mw-redirect"&gt;XDM&lt;/span&gt; básico. GDM permite a los usuarios  personalizar o solucionar problemas de su configuración sin tener que  recurrir a la línea de comandos. GDM también permite una fácil  personalización con temas gráficos.&lt;br /&gt;&lt;br /&gt;Una vez que se inicia Ubuntu 10.04 nos encontramos frente a su interfaz  gráfica basada en GNOME 2.30.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmOoUEAmWI/AAAAAAAAAek/Kda9T3UvWz8/s1600/pantallaz015.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 304px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/TAmOoUEAmWI/AAAAAAAAAek/Kda9T3UvWz8/s400/pantallaz015.png" alt="" id="BLOGGER_PHOTO_ID_5479067244904356194" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://go2.wordpress.com/?id=725X1342&amp;amp;site=sliceoflinux.wordpress.com&amp;amp;url=http%3A%2F%2Fsliceoflinux.files.wordpress.com%2F2010%2F04%2Finstalar-ubuntu-10-04-38.png&amp;amp;sref=http%3A%2F%2Fsliceoflinux.com%2F2010%2F04%2F29%2Finstalar-ubuntu-10-04-paso-a-paso%2F"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;¡FELICIDADES!&lt;/span&gt; Ahora a disfrutar de Ubuntu 10.04 LTS.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a style="font-weight: bold;" name="Arrancar el equipo"&gt;&lt;/a&gt;&lt;h3&gt;&lt;a name="Arrancar el equipo"&gt;&lt;/a&gt;&lt;/h3&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-3429380038628083143?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3429380038628083143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3429380038628083143'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2010/05/instalacion-de-ubuntu-1004-desde-usb.html' title='INSTALACIÓN DE UBUNTU 10.04 DESDE USB.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_BfXOb8WZwPI/TARykj2GYpI/AAAAAAAAAck/lOgdYzOLmBA/s72-c/ubuntu01.png' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6430771242709946621</id><published>2009-10-16T11:22:00.008-05:00</published><updated>2009-10-16T12:07:48.382-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>PROGRAMA QUE CALCULA EL MAYOR DE 3 NUMEROS.</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/StikU0c7WTI/AAAAAAAAAaE/9PpCWXpK2w4/s1600-h/copyleft.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 104px; height: 91px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/StikU0c7WTI/AAAAAAAAAaE/9PpCWXpK2w4/s200/copyleft.jpg" alt="" id="BLOGGER_PHOTO_ID_5393241231360481586" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Programa realizado en el compilador gcc y modificado para el compilador Turbo C. Programa que calcula el mayor de 3 numeros introducidos.&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt; &lt;span style="font-weight: bold;"&gt;&lt;&lt;-Realizado por: Ing. Miguel Angel Merida Alfaro-&gt;&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;#include "stdio.h"&lt;br /&gt;#include "conio.h"&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;int main()&lt;br /&gt;{   clrscr();&lt;br /&gt;int num1=0,num2=0,num3=0;&lt;br /&gt;printf("\nInserte el primer numero:");&lt;br /&gt;scanf("%d",&amp;amp;num1);&lt;br /&gt;printf("\nInserte el segundo numero:");&lt;br /&gt;scanf("%d",&amp;amp;num2);&lt;br /&gt;printf("\nInserte el tercer numero:");&lt;br /&gt;scanf("%d",&amp;amp;num3);&lt;br /&gt;&lt;br /&gt;if(num1&gt;num2 &amp;amp;&amp;amp; num1&gt;num3)&lt;br /&gt;{&lt;br /&gt;  printf("\n\nEl mayor es:%d",num1);&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;if(num2&gt;num1 &amp;amp;&amp;amp; num2&gt;num3)&lt;br /&gt;{&lt;br /&gt; printf("\n\nEl mayor es:%d",num2);&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt; printf("\n\nEl mayor es:%d\n",num3);&lt;br /&gt;&lt;br /&gt;return 0;&lt;br /&gt;getch();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/*NOTA!: Cualquier duda o comentario, escriban. GRACIAS POR LA VISITA.*/&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6430771242709946621?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6430771242709946621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6430771242709946621'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2009/10/programa-que-calcula-el-mayor-de-3.html' title='PROGRAMA QUE CALCULA EL MAYOR DE 3 NUMEROS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_BfXOb8WZwPI/StikU0c7WTI/AAAAAAAAAaE/9PpCWXpK2w4/s72-c/copyleft.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-8333372895582731028</id><published>2009-07-04T11:47:00.020-05:00</published><updated>2009-07-04T12:41:14.427-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='linux'/><title type='text'>Compilar programas en gcc</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;span style="color: rgb(0, 51, 0);font-family:courier new;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:courier new;font-size:100%;"  &gt;Hace tiempo me encontre con un problema en la compilación de mis programas en C &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:courier new;font-size:100%;"  &gt;en linux (distro ubuntu), ya que se tiene que compilar en &lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:courier new;font-size:100%;"  &gt;consola, pero investigando encontre la solución y aqui les paso el dato:&lt;/span&gt;&lt;span style="color: rgb(0, 0, 0);font-family:courier new;font-size:100%;"  &gt; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Primero creamos nuestra carpeta para guardar ahi los programas que se crearan, luego entramos a nuestra carpeta y desde ahi empezamos a  crear nuestro programa con cualquier editor, vi, vim, pico, nano, gedit, etc. Pero yo prefiero el vim, bueno para eso escribimos en la terminal de linux: &lt;span style="font-style: italic; font-weight: bold;"&gt;vim NombrePrograma.c    &lt;br /&gt;&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Luego en vim tenemos que apretar la tecla &lt;span style="font-weight: bold;"&gt;i&lt;/span&gt; para insertar texto y empezar a programar, cuando terminemos presionamos la tecla &lt;span style="font-weight: bold;"&gt;ESC&lt;/span&gt; para dejar de insertar texo, para salir del editor guardando nuestro programa sin pedir confirmación escribimos &lt;span style="font-weight: bold;"&gt;:wq!&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Ahora compilaremos nuetro programa con la siguiente instrucción en la terminal: &lt;span style="font-weight: bold;"&gt;gcc NombrePrograma.c&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;li style="text-align: justify;"&gt;Si nos marco algún error del codigo fuente es necesario volver al codigo de nuestro programa y verificar que todo este bien para poder compilar sin problemas, ahora tenemos que eliminar  el archivo a.out ya que es el archivo ejecutable resultado de la compilación y como no queremos que nuestro programa ejecutable se llame a.out lo eliminamos y cambiamos el nombre&lt;span style="font-weight: bold;"&gt;, &lt;/span&gt;todo esto se hace de la siguiente manera en la terminal:  &lt;span style="font-weight: bold;"&gt;rm a.out&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-weight: bold;"&gt;gcc NombrePrograma.c -o NuevoNombre&lt;/span&gt;&lt;/div&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;span&gt;En la instrucción anterior es una letra "o" no un cero, mucho ojo con eso, finalmente compilamos nuestro programa, lo podemos hacer de dos maneras, a continuación las presento:&lt;/span&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;La primera es indicando la ruta donde se encuentra mi programa ejecutable, ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-weight: bold;"&gt;maikol@maikol-desktop:~$ &lt;span style="font-style: italic;"&gt;/home/maikol/programas/factorial&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;inserta el numero:5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;el factorial es:120.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;maikol@maikol-desktop:~$ &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;La otra manera es entrar a nuestra carpeta donde tenemos los programas creados y solamente escribir la siguiente instrucción en terminal:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-weight: bold;"&gt;maikol@maikol-desktop:~$ cd programas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;maikol@maikol-desktop:~/programas$ &lt;span style="font-style: italic;"&gt;./factorial&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;inserta el numero:7&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;el factorial es:5040.0&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;maikol@maikol-desktop:~/programas$ &lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-8333372895582731028?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8333372895582731028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8333372895582731028'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2009/07/compilar-programas-en-gcc.html' title='Compilar programas en gcc'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-8497777084640798548</id><published>2009-06-15T19:37:00.018-05:00</published><updated>2009-06-15T20:22:56.800-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Redes'/><title type='text'>PLANEACIÓN DE UNA RED DE ÁREA DE LOCAL</title><content type='html'>&lt;span style=";font-family:Arial;color:black;"  &gt;Una red proporciona muchas características para mejorar la productividad, reducir costos y permitir el intercambio de información importante. El que la red satisfaga estas necesidades esto lo determinará la planeación previa a su instalación.&lt;/span&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Las necesidades de redes actuales y futuras determinan lo extenso que debe ser el proceso de planeación. Las redes pequeñas de unos cuantos nodos, ubicados en la misma área física, requieren una planeación mínima. En cambio una planeación mas amplia es obligada para aquellas redes de muchos nodos a situarse en diferentes espacios y hasta en distintos pisos, redes que probablemente requerirán nodos adicionales en el futuro.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;El siguiente paso en la planeación de la red es determinar donde ubicar las computadoras, después de determinar si la red será basada en servidor o de punto a punto, sobra mejor si se quiere un servidor dedicado además de los otros nodos.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;Etapas de la red&lt;/span&gt;&lt;span style=";font-family:Calibri;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;INTERNA:&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; Dentro de un edificio:&lt;br /&gt;Cableado tradicional (coaxial y sistemas separados)&lt;br /&gt;Cableado Estructurado (UTP y sistemas integrados)&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;EXTERNA:&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; Entre edificios.&lt;br /&gt;Cableado Estructurado (Fibra Óptica y sistemas integrados)&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Calibri;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;NECESIDADES DEL CLIENTE&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Calibri;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Contempla las necesidades actuales del cliente (equipos a conectar) dentro de un edificio o los edificios a conectar y servicios que ofrecerá el cliente en la red y/o recursos a compartir. &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;PLANEACION&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;•Conocer la cantidad de equipos que se pretenden conectar en red.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;•modo de operación de los equipos (locales o en red)&lt;br /&gt;•equipos (&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;PC´s&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;) servidores, estaciones de trabajo y características&lt;br /&gt;•equipo activo de red con que cuenta&lt;br /&gt;•accesorios de red con que se cuenta&lt;br /&gt;•posibles obstáculos que se presentarán en la instalación&lt;br /&gt;•Determinar el tipo de cableado a utilizar: tradicional o estructurado.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold; font-style: italic;font-family:Calibri;color:black;"  &gt;-Desarrollo etapa interna&lt;/span&gt;&lt;span style=";font-family:Calibri;color:black;"  &gt;&lt;br /&gt;&lt;br /&gt;-&lt;/span&gt;&lt;span style="font-weight: bold; font-style: italic;font-family:Calibri;color:black;"  &gt;Desarrollo etapa externa&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold; font-style: italic;font-family:Calibri;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;LAN (Local Área Network) es una red que conecta directamente entre sí equipos situados en un ámbito geográfico local (unos centenares de metros o unos pocos Km.). Suele ser administrada localmente por la misma empresa que dispone de la red, es decir, es una red privada.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;Ventajas de las redes locales&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Calibri;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;•Posibilidad de compartir periféricos costosos como son: impresoras láser, módem, fax, etc.&lt;br /&gt;•Posibilidad de compartir grandes cantidades de información a través de distintos programas, bases de datos, etc., de manera que sea más fácil su uso y actualización.&lt;br /&gt;•Reduce e incluso elimina la duplicidad de trabajos.&lt;br /&gt;•Permite utilizar el correo electrónico para enviar o recibir mensajes de diferentes usuarios de la misma red e incluso de redes diferentes.&lt;br /&gt;•Reemplaza o complementa minicomputadoras de forma eficiente y con un costo bastante más reducido.&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;Determinación de las necesidades de la red&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:Algerian;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;¿Para que es la red?&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Se necesita determinar si varias personas deben tener acceso a archivos, como documentos acerca de las políticas de la compañía o plantillas para crear otros documentos.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;¿Cuántos nodos necesitan?&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Una consideración importante cuando se planea la red es determinar cuantas computadoras se necesitan conectar de inmediato y en el futuro. &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;¿Cuáles son las necesidades de rendimiento?&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Los requisitos de rendimiento de la red dependen de varios factores. &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Si, el objetivo principal de la red es compartir impresoras, entonces es probable que la configuración de red con menor rendimiento sea más que suficiente. Si se van a compartir archivos y datos con otros nodos de la red, si importa el rendimiento; por lo tanto, se debe pensar en una red que tenga el rendimiento de 10 Mbps, como el de Ethernet.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;¿Qué nodos necesitan compartir recursos?&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Cuando determinan las necesidades de la red se deben establecer los nodos que compartan recursos y lo que no.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;¿Cuánto costara la red?&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Los costos en lo que se incurre para poner en funcionamiento diversas características de red no están tan relacionados a todas las funciones sino a la tecnología disponible para ejecutar la función requerida.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BfXOb8WZwPI/SjbrVdb88MI/AAAAAAAAAX8/z0apEl-UkEg/s1600-h/Imagen1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 207px;" src="http://2.bp.blogspot.com/_BfXOb8WZwPI/SjbrVdb88MI/AAAAAAAAAX8/z0apEl-UkEg/s400/Imagen1.jpg" alt="" id="BLOGGER_PHOTO_ID_5347720361460691138" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="file:///C:/Users/maikol/AppData/Local/Temp/moz-screenshot-10.jpg" alt="" /&gt;&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;span style=";font-family:Calibri;color:black;"  &gt; &lt;/span&gt;&lt;p&gt;&lt;/p&gt;  &lt;span style=";font-family:Calibri;color:black;"  &gt; &lt;/span&gt;&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div style="text-align: center; font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;Dimensionamiento de una red.&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sjbr25Pn4DI/AAAAAAAAAYE/xY80skhooEo/s1600-h/Imagen2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 200px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sjbr25Pn4DI/AAAAAAAAAYE/xY80skhooEo/s400/Imagen2.jpg" alt="" id="BLOGGER_PHOTO_ID_5347720935860854834" border="0" /&gt;&lt;/a&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="line-height: 80%; margin-top: 6.72pt; margin-bottom: 0pt; margin-left: 0in; text-indent: 0in; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="color: rgb(137, 137, 137);font-family:Calibri;font-size:28;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;&lt;div style="text-align: justify;"&gt;Las redes de computadoras están formadas por una amplia variedad de componentes organizados según diversas topologías. Las organizaciones topológicas permiten reducir costos, aumentar la fiabilidad y el rendimiento y reducir el retardo.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;•La red consiste en ECD (Computadoras de conmutación) interconectadas por canales alquiladas de alta velocidad (Por ejemplo, líneas de 56Kbits). Cada ECD utiliza un protocolo responsable de encaminar correctamente y terminales de los usuarios finales conectados a los mismos. El control de red (CCR) es el responsable de la eficiencia y fiabilidad de las operaciones de la red .&lt;br /&gt;&lt;br /&gt;El sector de las LAN es una de las más rápidas en la industria de las comunicaciones. Las redes de área local poseen las siguientes características:&lt;br /&gt;&lt;br /&gt;♦Generalmente, los canales son propiedad del usuario o empresa&lt;br /&gt;•♦Los enlaces son líneas de muy alta velocidad (desde 1Mbits hasta 400 Mbits). Los ETD´S se conecta a la red vía canales de baja velocidad (desde 600 bits hasta 56 Kbits).&lt;br /&gt;•♦Los ETD están cercanos entre si, generalmente en un mismo edificio. Puede utilizarse un ECD para conmutar entre diferentes configuraciones, pero no tan frente con las WAN.&lt;br /&gt;&lt;br /&gt;♦Las líneas son de mejor calidad que los canales en las WAN.&lt;br /&gt;&lt;br /&gt;El dimensionamiento de una red trata de la correlación entre parámetros de los diferentes modelos (Tráfico, movilidad y propagación) tanto desde el punto de vista teórico como práctico.&lt;br /&gt;El dimensionamiento de una red implica los siguientes puntosTamaño del campoTrazado del campoAltura libre de obstáculosOrientaciónIluminaciónSuperficieCostoTamañoFormaDensidad permisible.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center; font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;Estructura de una red.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify; font-weight: normal;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;El diseño completo de la red simplifica notablemente cuando se separan los aspectos puros de comunicación de la red (la subred), de los aspectos de aplicación (los hostales). Una subred en la mayor parte de las redes de área extendida consiste de dos componentes diferentes: las líneas de transmisión y los elementos de conmutación. Las líneas de transmisión (conocidas como circuitos, canales o troncales), se encargan de mover bits entre máquinas. Los elementos de conmutación son computadoras especializadas que se utilizan para conectar dos o mas líneas de transmisión.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;Redes de comunicación.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;La generalización de la computadora personal (PC) y de la red de área local (LAN) durante la década de los ochenta ha dado lugar a la posibilidad de acceder a información en bases de datos remotas; cargar aplicaciones desde puntos de ultramar; enviar mensajes a otros países y compartir ficheros, todo ello desde una computadora personal. Las redes que permiten todo esto son equipos avanzados y complejos.&lt;br /&gt;&lt;br /&gt;Módems y empresas de serviciosPara utilizarlos se podía conectar un terminal directamente o mediante una línea telefónica y un módem para acceder desde un lugar remoto&lt;br /&gt;los experimentos del Departamento de Defensa norteamericano con vistas a distribuir los recursos informáticos como protección contra los fallos. Este proyecto se llama ahora Internet.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Áreas claves que deben ser atendidas por la red.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;Compartir el costo de equipos periféricos caros (Impresoras - Particularmente impresoras de alta resolución n y a color- y unidades de disco)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Análisis de sitio para la red&lt;/span&gt; &lt;br /&gt;Cuando ya se saben lo que son las áreas que son atendidos por la red, necesitamos establecer las cosas con las que cuentan para trabajar; esto es, cuales son los activos actuales. Hay dos áreas principales a tomar en cuenta:&lt;br /&gt;&lt;br /&gt;1.Ubicación y servicios&lt;br /&gt;2.Equipo&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ubicación y servicios&lt;/span&gt;&lt;br /&gt;La primera área requiere que se dibuje un esquema o plano del lugar; en donde debe aparecer todo el equipo relevante así como los contactos electrónicos.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Descripción del dimensionamiento de la red&lt;/span&gt;.&lt;br /&gt;El dimensionamiento de una red aplica por partes modelos, métodos y algoritmos similares a los de la planificación de redes fijas, pero la movilidad de sus clientes y la estructura celular de la parte de acceso requieren modelos, métodos y algoritmos especiales&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Equipo de selección&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;Una de las decisiones que se deben de tomar acerca de la instalación es que tipo de hardware de red emplear.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Costo&lt;/span&gt;&lt;br /&gt;El factor más importante, el costo frecuentemente esta en relación directa con el rendimiento: en general, mientras mas se pague más rápida será la red. Por lo tanto si gasta mucho dinero, su red será sorprendentemente rápida.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Rendimiento&lt;/span&gt;&lt;br /&gt;Cuanto mas alta será la frecuencia de datos bruta (la frecuencia a la que se transmite las señales a través de la red), mejor será el rendimiento que notara al acceder lo recursos de la red.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Medidas Básicas de Seguridad&lt;/span&gt;&lt;br /&gt;Es necesario el uso restringido del equipo de infraestructura de la red y de los recursos críticos. Limitar el acceso a la red a solo los que tengan permitido, es una manera inteligente de detener muchas amenazas que pueden abrir una brecha en la seguridad de las redes de computadoras.&lt;br /&gt;&lt;br /&gt;No todas las amenazas tienen porque se dañinas, pero pueden tener el mismo comportamiento y causar el mismo daño. Es importante comprender que tipos de ataques y vulneraciones son comunes, y que se pueden hacer al nivel de la naturalización para garantizar la seguridad en la red.&lt;br /&gt;La propia complejidad de la red es una dificultad para la detección y corrección de los múltiples y variados problemas de seguridad que van apareciendo.&lt;br /&gt;&lt;br /&gt;A la hora de plantearse en qué elementos del sistema se deben de ubicar los servicios de seguridad podrían distinguirse dos tendencias principales: Protección de los sistemas de transferencia o transporte. En este caso, el administrador de un servicio asume la responsabilidad de garantizar la transferencia segura al usuario final de la información de forma lo más transparente posible.&lt;br /&gt;&lt;br /&gt;Ejemplos de este tipo de planteamientos serían el establecimiento de un nivel de transporte seguro, de un servicio de mensajería con MTAs (Mail Transport Agents) seguras, o la instalación de un firewall, que defiende el acceso a una parte protegida de una red.&lt;br /&gt;Si pensamos, por ejemplo, en el correo electrónico, consistiría en construir un mensaje en el cual el contenido ha sido asegurado mediante un procedimiento de encapsulado previo al envío.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Conceptos de seguridad:&lt;/span&gt;&lt;br /&gt;La posibilidad de interconectarse a través de redes, ha abierto nuevos horizontes que permiten explorar más allá de las fronteras de la organización. Esta situación ha llevado a la aparición de nuevas amenazas en los sistemas computarizados.&lt;br /&gt;&lt;br /&gt;En este sentido, las políticas de seguridad informática (PSI) surgen como una herramienta organizacional para concientizar a cada uno de los miembros de una organización sobre la importancia y la sensibilidad de la información y servicios críticos que favorecen el desarrollo de la organización y su buen funcionamiento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¿Cuál puede ser el valor de los datos?&lt;/span&gt;&lt;br /&gt;Cuando hablamos del valor de la información nos referimos, por ejemplo, a qué tan peligroso es enviar la información de mi tarjeta de crédito a través de Internet para hacer una compra, en una red gigantesca donde viajan no únicamente los 16 dígitos de mi tarjeta de crédito sino millones de datos más , gráficas, voz y vídeo.&lt;br /&gt;Aunque no se esté conectado a Internet, una red está expuesta a distintos tipos de ataques electrónicos, incluidos los virus.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Seguridad Global:&lt;/span&gt;&lt;br /&gt;¿Qué es una red global? El concepto de red global incluye todos los recursos informáticos de una organización, aún cuando estos no estén interconectados:&lt;br /&gt;Redes (LAN), (MAN), (WAN), Computadoras personales, minis y grandes sistemas.&lt;br /&gt;De manera que, seguridad global es mantener bajo protección todos los componentes de una red global. Al fin de cuentas, los usuarios de un sistema son una parte a la que no hay que olvidar ni menospreciar.&lt;br /&gt;Siempre hay que tener en cuenta que la seguridad comienza y termina con personas.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¿Porque es esencial la seguridad en la red?&lt;/span&gt;&lt;br /&gt;La seguridad en la red es esencial porque Internet es una red de redes interconectadas que no tiene límites. Debido a este hecho, la red organizativa se vuelve accesible y vulnerable para las computadoras de cualquier parte del mundo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¿Principales amenazas para la seguridad en la red?&lt;/span&gt;&lt;br /&gt;Existen cuatro principales amenazas para la seguridad de la red:&lt;br /&gt;Amenazas sin estructura&lt;br /&gt;Amenazas estructuradas&lt;br /&gt;Amenazas externas&lt;br /&gt;Amenazas internas&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Tres tipos de ataques en la red:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Ataques de reconocimiento:&lt;/span&gt; Un intruso intenta describir y asignar los sistemas, servicios y sus puntos vulnerables. &lt;br /&gt;&lt;span style="font-style: italic;"&gt;Ataques acceso:&lt;/span&gt; Un intruso ataca las redes o los sistemas para conseguir datos, a un mejor acceso o aumentar su acceso privilegiado.&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Ataques de denegación de servicio (D o S):&lt;/span&gt; Un intruso ataca la red y daña o corrompe su sistema de computadoras, negándole a usted y a los demás el acceso a las redes, sistemas o servicios.&lt;br /&gt;&lt;br /&gt;Debemos de tomar en cuenta que seguridad no es solo prevenir accesos no autorizados sino que también es prevenir o limitar borrados de archivos accidentales y la incursión de virus, los problemas eléctricos también puede afectar la integridad de los datos. A pesar de todas la medidas que pueden tomarse en cuanta para la prevención de desastres estos pueden ocurrir por lo que se debe estar preparado para recuperase de los mismos los mas rápido posible.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Implementación de la seguridad&lt;/span&gt;&lt;br /&gt;La implementación de medidas de seguridad, es un proceso técnico-administrativo. Como este proceso debe abarcar toda la organización, sin exclusión alguna, ha de estar fuertemente apoyado por el sector gerencial, ya que sin ese apoyo, las medidas que se tomen no tendrán la fuerza necesaria.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Políticas generales de seguridad&lt;/span&gt;&lt;br /&gt;Una política de seguridad informática es una forma de comunicarse con los usuarios y los gerentes. Las PSI establecen el canal formal de actuación del personal, en relación con los recursos y servicios informáticos, importantes de la organización.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Seguridad en Redes&lt;/span&gt;&lt;br /&gt;no existe una solución universal para proteger una red, en la mayoría de los casos la mejor estrategia suele consistir en tratar de colarnos nosotros mismos para poner de manifiesto y corregir posteriormente los agujeros de seguridad que siempre encontraremos.&lt;br /&gt;Esta estrategia se emplea cada vez con mayor frecuencia, y en algunos casos hasta se contrata a hackers para que impartan cursillos de seguridad a los responsables de las redes de las empresas.&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline; font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;1.4 Plan de contingencias.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline; font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Disponer de un plan de contingencia nos ayuda a la prevención y recuperación&lt;span style=""&gt;  &lt;/span&gt;de desastres que puedan ocurrir.&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;El plan de contingencias sirve para la Recuperación de caídas. Estas Puede ocurrir cuando uno de los sistemas falle, caso en el cual se desconectará, perdiéndose todos los datos que se contenían en su configuración. &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;El plan de contingencias, se define como la puesta en práctica del plan de desastres. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;¿Por qué se necesita un plan de contingencia?&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;La planeación de desastres se enfoca principalmente en dos aspectos:&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.38in; text-indent: -0.38in; text-align: justify; direction: ltr; unicode-bidi: embed;"&gt;&lt;span style=""&gt;1.&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; Conservar la integridad de la información corporativa y &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.38in; text-indent: -0.38in; text-align: justify; direction: ltr; unicode-bidi: embed;"&gt;&lt;!--[if ppt]--&gt;&lt;span style=""&gt;●&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; margin-left: 0.38in; text-indent: -0.38in; text-align: justify; direction: ltr; unicode-bidi: embed;"&gt;&lt;span style=""&gt;2.&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;mantener el funcionamiento del sistema hasta que puedan reanudarse las operaciones habituales.&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Un plan de contingencias es el proceso de determinar que hacer si una catástrofe aparece sobre la red y es necesario recuperar la red y los sistemas. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;¿Qué es un desastre?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Se puede considerar como un desastre la interrupción prolongada de los recursos informáticos y de comunicación de una organización, que no puede remediarse dentro de un periodo predeterminado aceptable y que necesita el uso de un sitio o equipo alterno para su recuperación.&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Las ventajas de crear y contar con un plan de contingencias abarcan lo tangible e intangible así:&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Wingdings;"&gt;ü&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Reducción de los costos por perjuicios si ocurre un siniestro. &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Wingdings;"&gt;ü&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Las primas de seguro de bajo costo.&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Wingdings;"&gt;ü&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Mayor comunicación y mejores relaciones entre las redes.&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Wingdings;"&gt;ü&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Una mayor conciencia entre el personal de seguridad sobre la importancia de la seguridad y el valor de la prioridad que se está protegiendo.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;CONFLICTO CON LAS TARJETAS DE RED.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbwW7wIEwI/AAAAAAAAAYc/811V50fHYLk/s1600-h/Imagen4.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 192px; height: 132px;" src="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbwW7wIEwI/AAAAAAAAAYc/811V50fHYLk/s400/Imagen4.jpg" alt="" id="BLOGGER_PHOTO_ID_5347725884336378626" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbveP6XEjI/AAAAAAAAAYM/eDs8fjpi6aY/s1600-h/Imagen3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 222px; height: 148px;" src="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbveP6XEjI/AAAAAAAAAYM/eDs8fjpi6aY/s400/Imagen3.jpg" alt="" id="BLOGGER_PHOTO_ID_5347724910495470130" border="0" /&gt;&lt;/a&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Cuando hay conflictos en las tarjetas de red se puede detectar que hay problemas con la tarjeta de red, cuando el led de la tarjeta no enciende.&lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Toda computadora contiene uno de estos dispositivos, en caso de que usted se percate de que este problema existe lo que puede hacer es lo siguiente:&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:Calibri;color:black;"  &gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-style: italic;font-family:Arial;color:black;"  &gt;1.Verificar que el conector RJ-45 este correctamente ajustado a la tarjeta de red. &lt;/span&gt;&lt;/div&gt;  &lt;p style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-style: italic;font-family:Arial;color:black;"  &gt;2.Verificar que el concentrador este conectado a la toma de corriente.&lt;/span&gt;&lt;/p&gt;  &lt;p style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-style: italic;font-family:Arial;color:black;"  &gt;3.También un problema puede ser que la tarjeta no este bien ensamblado en su respectiva ranura.&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;PROBLEMAS CON LOS CABLES.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/SjbwxjjSTMI/AAAAAAAAAYk/HJ6lhszQ0Lo/s1600-h/Imagen5.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 341px; height: 257px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/SjbwxjjSTMI/AAAAAAAAAYk/HJ6lhszQ0Lo/s400/Imagen5.jpg" alt="" id="BLOGGER_PHOTO_ID_5347726341696539842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sjbw4ZMd5VI/AAAAAAAAAYs/kIkaHupatJg/s1600-h/Imagen6.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 212px; height: 226px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sjbw4ZMd5VI/AAAAAAAAAYs/kIkaHupatJg/s400/Imagen6.jpg" alt="" id="BLOGGER_PHOTO_ID_5347726459175560530" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Los problemas con los cables son la causa mas común de que haya dificultades con la red.&lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Por el diseño de la red a veces el cableado suele estar en lugares muy “escondidos” en donde los principales enemigos de estos son lo roedores. &lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Lo que usted debe de hacer en caso de que su red tenga un problema de este tipo es lo siguiente:&lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;1.Verificar que los cables estén correctamente conectados a las tarjetas de red.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;2.Verifica que los cables estén correctamente conectados al concentrador.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;3.Revisar cada conector RJ-45 de los dos extremos.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;4.Otro problema muy común es que el cable que esta utilizando no sea el correcto.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;span style=";font-family:Arial;color:black;"  &gt;5.Una solución contra los roedores es utilizar cable “envenenado”.&lt;/span&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;EL SERVIDOR NO VISUALIZA UNA MAQUINA.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbxlSpJwzI/AAAAAAAAAY8/tn_UzRAaxWA/s1600-h/Imagen7.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 375px; height: 275px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbxlSpJwzI/AAAAAAAAAY8/tn_UzRAaxWA/s400/Imagen7.jpg" alt="" id="BLOGGER_PHOTO_ID_5347727230510940978" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Este problema se trata de que alguna computadora no visualice a otra.&lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Los pasos para identificar este problema son casi idénticos a los anteriormente tratados en este plan de contingencia. Lo principal es saber que computadora es la que falta que este en contacto con nuestra red.&lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Con la ejecución de comandos es posible saber si una computadora esta recibiendo datos correctamente, el comando se denomina PING y es utilizado de la siguiente forma: &lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;span style="font-weight: bold;font-family:Calibri;color:black;"  &gt;1.- Ping&lt;span style=""&gt;  &lt;/span&gt;IP_de_la_maquina_destino&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Calibri;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;2.-&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Se visualizara lo siguiente (utilizando como ejemplo la IP 192.168.20.12):&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="line-height: 150%; margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Haciendo ping a 192.168.28.12 con 32 bytes de datos:&lt;br /&gt;Respuesta desde 192.168.28.12: bytes=32 tiempo&lt;10ms tdv="128" bytes="32" tdv="128" bytes="32" tdv="128" bytes="32" tdv="128" bytes="32" tdv="128" bytes="32" tdv="128" bytes="32" tdv="128" bytes="32" tdv="128"&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Calibri;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Calibri;color:black;"  &gt;3.-&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Si se visualiza lo anterior quiere decir que la computadora esta en funcionamiento, si no, marcara lo contrario.&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Haciendo ping a 192.168.28.12 con 32 bytes de datos:&lt;br /&gt;Tiempo de espera agotado.&lt;br /&gt;Tiempo de espera agotado.&lt;br /&gt;Tiempo de espera agotado.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline; font-weight: bold;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;LA COMPUTADORA NO ENCIENDE.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/SjbxeQ23IRI/AAAAAAAAAY0/WlhyaaYaWZ8/s1600-h/Imagen8.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 278px; height: 212px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/SjbxeQ23IRI/AAAAAAAAAY0/WlhyaaYaWZ8/s400/Imagen8.jpg" alt="" id="BLOGGER_PHOTO_ID_5347727109772484882" border="0" /&gt;&lt;/a&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Se debe de hacer una revisión rápida de los que serian los problemas principales, de que una computadora no encienda.&lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;1.Antes que nada hay que revisar que todos los cables que contiene la computadora estén correctamente conectados en donde es su lugar.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;2.En casos mas extremos habrá que abrir la computadora y verificar los siguientes componentes:&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;•La fuente de energía &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;•El disco duro &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;•El ventilador&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;"&gt;EXCESO DE HUMEDAD.&lt;/span&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Los problemas que puede ocasionar es que la humedad puede llegar a desprender gotitas de agua sobre el equipo y provocar un apagón, corto circuito y en el peor de los casos un incendio.&lt;/span&gt;&lt;/div&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;!--[if ppt]--&gt;&lt;span style="font-family:Arial;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/div&gt;    &lt;p&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;"&gt;INCENDIOS.&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;font-size:20;color:black;"   &gt; &lt;/span&gt;&lt;/p&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Hay que tomar las precauciones necesarias, como la instalación de extinguidores.&lt;/span&gt;&lt;/div&gt;    &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Otra precaución podría ser que haya instalaciones de ventilación pues la sobrecarga de uso del pueda ocasionar un sobrecalentamiento y esto provoque un corto circuito.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;HACER RESPALDOS.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbypwFoOdI/AAAAAAAAAZE/eJBrqsaBCNU/s1600-h/Imagen9.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 253px; height: 170px;" src="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbypwFoOdI/AAAAAAAAAZE/eJBrqsaBCNU/s400/Imagen9.jpg" alt="" id="BLOGGER_PHOTO_ID_5347728406646110674" border="0" /&gt;&lt;/a&gt;&lt;span style="font-family:Arial;"&gt;&lt;br /&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Es conveniente crear respaldos de información y los medios que podemos utilizar para respaldar son: CD ROM, DISCOS FLEXIBLES, UNIDADES ZIP, CINTAS MAGNETICAS, BASES DE DATOS EXTERNA.&lt;/span&gt;&lt;/div&gt;    &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-family:Arial;"&gt;&lt;br /&gt;•&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Otra manera con la que se puede hacer un respaldo es teniendo todos los documentos impresos.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;ATAQUES CONTRA VIRUS&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BfXOb8WZwPI/SjbzF0UqNFI/AAAAAAAAAZU/P8AVVgqv_mw/s1600-h/Imagen10.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 226px; height: 204px;" src="http://2.bp.blogspot.com/_BfXOb8WZwPI/SjbzF0UqNFI/AAAAAAAAAZU/P8AVVgqv_mw/s400/Imagen10.jpg" alt="" id="BLOGGER_PHOTO_ID_5347728888819233874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Las recomendaciones para protegernos de los virus son las siguientes:&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Instalar un Software Antivirus actualizado y que tenga opciones de actualización para actualizarlo cada semana.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;    &lt;div style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Vacunar los discos flexibles antes de acceder a cualquier información contenida en ellos.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Activar las opciones de autoprotección del antivirus instalado.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Establecer muros de fuego para que no permita el paso de información extraña.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-8497777084640798548?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8497777084640798548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8497777084640798548'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2009/06/planeacion-de-una-red-de-area-de-local.html' title='&lt;CENTER&gt;PLANEACIÓN DE UNA RED DE ÁREA DE LOCAL&lt;/CENTER&gt;'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_BfXOb8WZwPI/SjbrVdb88MI/AAAAAAAAAX8/z0apEl-UkEg/s72-c/Imagen1.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6036512248506103035</id><published>2009-06-15T15:57:00.045-05:00</published><updated>2009-06-15T16:56:57.138-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Redes'/><title type='text'>LA VIDA EN UN MUNDO CENTRADO EN LA RED</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;"&gt;REDES QUE RESPALDAN LA FORMA EN QUE VIVIMOS.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja2s6qJhRI/AAAAAAAAAV8/6bo0WeAFKuA/s1600-h/SUBIR01.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 288px; height: 151px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja2s6qJhRI/AAAAAAAAAV8/6bo0WeAFKuA/s320/SUBIR01.jpg" alt="" id="BLOGGER_PHOTO_ID_5347662490325583122" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;Las primeras redes de datos estaban limitadas a intercambiar información basada en caracteres entre sistemas informáticos conectados.&lt;br /&gt;Las redes actuales evolucionaron para agregarle voz, flujos de video, texto y gráficos, a los diferentes tipos de dispositivos.&lt;br /&gt;Esta plataforma proporciona accesos a una amplia variedad de métodos de comunicación alternativos y nuevos que permiten a las personas interactuar directamente con otras en forma casi instantánea.&lt;/p&gt;&lt;span style="font-weight: bold;"&gt;Comunidad global.&lt;/span&gt;&lt;br /&gt;La creación de comunidades en línea para el intercambio de ideas e información tiene el potencial de aumentar las oportunidades de productividad en todo el planeta.&lt;br /&gt;&lt;p align="justify"&gt;Las redes de datos que fueron alguna vez el transporte de información entre negocios se replanificaron para mejorar la calidad de vida de todas las personas.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sja4C-JDgQI/AAAAAAAAAWE/R6jz6e1W7Wc/s1600-h/Imagen1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 224px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sja4C-JDgQI/AAAAAAAAAWE/R6jz6e1W7Wc/s320/Imagen1.jpg" alt="" id="BLOGGER_PHOTO_ID_5347663968729268482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;EJEMPLOS DE LAS HERRAMIENTAS DE COMUNICACIÓN MAS POPULARES.&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sja43l-AywI/AAAAAAAAAWU/bjTcAHhqM6U/s1600-h/Imagen2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 296px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/Sja43l-AywI/AAAAAAAAAWU/bjTcAHhqM6U/s400/Imagen2.jpg" alt="" id="BLOGGER_PHOTO_ID_5347664872773569282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;REDES QUE RESPALDAN LA FORMA EN QUE APRENDEMOS.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;p align="justify"&gt;Redes confiables y sólidas respaldan y enriquecen las experiencias de aprendizaje de los estudiantes. Estas redes envían material de aprendizaje en una amplia variedad de formatos. Los materiales de aprendizaje incluyen actividades interactivas, evaluaciones y comentarios.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja5sWofdHI/AAAAAAAAAWc/nBDAVT-ou0w/s1600-h/Imagen3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 228px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja5sWofdHI/AAAAAAAAAWc/nBDAVT-ou0w/s400/Imagen3.jpg" alt="" id="BLOGGER_PHOTO_ID_5347665779189838962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;REDES QUE RESPALDAN LA FORMA EN QUE JUGAMOS.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;La adopción generalizada de Internet por las industrias de viaje y entretenimiento mejora la posibilidad de disfrutar y compartir diferentes formas de recreación, sin importar la ubicación.&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja6E4XtdNI/AAAAAAAAAWk/d--WdRuuXzw/s1600-h/Imagen4.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 271px;" src="http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja6E4XtdNI/AAAAAAAAAWk/d--WdRuuXzw/s400/Imagen4.jpg" alt="" id="BLOGGER_PHOTO_ID_5347666200563119314" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;span style="font-weight: bold;"&gt;Comunicación: una parte esencial en nuestras vidas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¿Qué es la comunicación?&lt;/span&gt;&lt;/p&gt;Antes de comenzar a comunicarnos, establecemos reglas o acuerdos que rigen la conversación. Estas reglas o&lt;br /&gt;&lt;p align="justify"&gt;Protocolos deben respetarse para que el mensaje se envíe y comprenda correctamente. Algunos de los protocolos que&lt;br /&gt;Rigen con éxito las comunicaciones humanas son:&lt;br /&gt;• Emisor y receptor identificados,&lt;br /&gt;• Método de comunicación consensuado (cara a cara, teléfono, carta, fotografía),&lt;br /&gt;• Idioma y gramática comunes,&lt;br /&gt;• Velocidad y puntualidad en la entrega, y&lt;br /&gt;• Requisitos de confirmación o acuse de recibo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Calidad de las comunicaciones&lt;/span&gt;&lt;br /&gt;La comunicación entre individuos está destinada a ser exitosa cuando el significado del mensaje comprendido por el&lt;br /&gt;Receptor coincide con el significado del emisor.&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-weight: bold;"&gt;Factores externos&lt;/span&gt;&lt;br /&gt;Los factores externos que afectan la comunicación están relacionados con la complejidad de la red y el número de&lt;br /&gt;Dispositivos que debe atravesar un mensaje para llegar al destino final.&lt;br /&gt;Los factores externos que afectan el éxito de las comunicaciones son:&lt;br /&gt;• La calidad de la ruta entre el emisor y el receptor,&lt;br /&gt;• La cantidad de veces que el mensaje tiene que cambiar la forma,&lt;br /&gt;• La cantidad de veces que el mensaje tiene que ser redireccionado o redirigido, y&lt;br /&gt;• La cantidad de mensajes adicionales que se transmiten simultáneamente en la red de comunicación,&lt;br /&gt;• La cantidad de tiempo asignado para una comunicación exitosa.&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-weight: bold;"&gt;Factores internos&lt;/span&gt;&lt;br /&gt;Los factores internos que afectan la comunicación exitosa en la red son:&lt;br /&gt;• El tamaño del mensaje,&lt;br /&gt;• La complejidad del mensaje, y&lt;br /&gt;• La importancia del mensaje.&lt;/p&gt;&lt;span style="font-weight: bold;"&gt;La red como plataforma&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; Comunicación a través de redes&lt;/span&gt;&lt;br /&gt;&lt;p align="justify"&gt;Poder comunicarse en forma confiable con todos en todas partes es de vital importancia para nuestra vida personal y comercial. Estas redes de información o datos varían en tamaño y capacidad&lt;br /&gt;Reglas y acuerdos para regular cómo se envían, redireccionan, reciben e interpretan los mensajes,&lt;br /&gt;• Los mensajes o unidades de información que viajan de un dispositivo a otro,&lt;br /&gt;• una forma de interconectar esos dispositivos, un medio que puede transportar los mensajes                                                                                                            de un dispositivo a&lt;br /&gt;Otro, y&lt;br /&gt;• Los dispositivos de la red que cambian mensajes entre sí.&lt;br /&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-weight: bold;"&gt;Elementos de una red&lt;/span&gt;&lt;br /&gt;El diagrama muestra los elementos de una red típica, incluyendo dispositivos, medios y servicios unidos por reglas, que trabajan en forma conjunta para enviar mensajes.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;span style="font-weight: bold;"&gt;Elementos de una red &lt;/span&gt;&lt;/center&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BfXOb8WZwPI/Sja8uHxR5sI/AAAAAAAAAWs/-qhXBGnt_4M/s1600-h/Imagen5.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 216px;" src="http://2.bp.blogspot.com/_BfXOb8WZwPI/Sja8uHxR5sI/AAAAAAAAAWs/-qhXBGnt_4M/s400/Imagen5.jpg" alt="" id="BLOGGER_PHOTO_ID_5347669108094789314" border="0" /&gt;&lt;/a&gt;El lado derecho de la figura muestra algunos de los dispositivos intermedios más comunes, utilizados para direccionar y&lt;br /&gt;&lt;p align="justify"&gt;Administrar los mensajes en la red, como así también otros símbolos comunes de interconexión de redes. Los símbolos&lt;br /&gt;Genéricos se muestran para:&lt;br /&gt;• Switch: el dispositivo más utilizado para interconectar redes de área local,&lt;br /&gt;• Firewall: proporciona seguridad a las redes,&lt;br /&gt;• Router: ayuda a direccionar mensajes mientras viajan a través de una red,&lt;br /&gt;• Router inalámbrico: un tipo específico de router que generalmente se encuentra en redes domésticas,&lt;br /&gt;• Nube: se utiliza para resumir un grupo de dispositivos de red, sus detalles pueden no ser importantes en este&lt;br /&gt;Análisis,&lt;br /&gt;• Enlace serial: una forma de interconexión WAN (Red de área extensa), representada por la línea en forma de&lt;br /&gt;Rayo.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja9o8zV6yI/AAAAAAAAAW0/BSgtQt620ls/s1600-h/Imagen5.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BfXOb8WZwPI/Sja9wuRD9sI/AAAAAAAAAW8/t5Jk1UMUuuc/s1600-h/Imagen6.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 309px;" src="http://2.bp.blogspot.com/_BfXOb8WZwPI/Sja9wuRD9sI/AAAAAAAAAW8/t5Jk1UMUuuc/s400/Imagen6.jpg" alt="" id="BLOGGER_PHOTO_ID_5347670252300007106" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p align="justify"&gt;Los dispositivos deben estar interconectados. Las conexiones de red pueden ser con cables o inalámbricas.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_BfXOb8WZwPI/Sja9wuRD9sI/AAAAAAAAAW8/t5Jk1UMUuuc/s1600-h/Imagen6.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbApXhd8DI/AAAAAAAAAXE/bmjMgQddXgY/s1600-h/Imagen7.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 285px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbApXhd8DI/AAAAAAAAAXE/bmjMgQddXgY/s400/Imagen7.jpg" alt="" id="BLOGGER_PHOTO_ID_5347673424470601778" border="0" /&gt;&lt;/a&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Mensajes&lt;/span&gt;&lt;br /&gt;•Todos los tipos de mensajes tienen que ser convertidos a bits, señales digitales codificadas en binario, antes de ser enviados a sus destinos. Esto es así sin importar el formato del mensaje original&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Dispositivos&lt;/span&gt;&lt;br /&gt;•Una computadora es sólo un tipo de dispositivo que puede enviar y recibir mensajes por una red. Muchos otros tipos de dispositivos pueden conectarse a la red para participar en servicios de red.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Medio&lt;/span&gt;&lt;br /&gt;•Las redes inalámbricas ó Ethernet&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Servicios&lt;/span&gt;&lt;br /&gt;•Los servicios de red son programas de computación que respaldan la red humana. Distribuidos en toda la red, estos servicios facilitan las herramientas de comunicación en línea como&lt;br /&gt;•e-mails, foros de discusión/boletines, salas de Chat y mensajería instantánea.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Las Reglas&lt;/span&gt;&lt;br /&gt;•Aspectos importantes de las redes que no son dispositivos ni medios, son reglas o protocolos. Estas reglas son las normas o protocolos que especifican la manera en que se envían los mensajes, cómo se direccionan a través de la red y cómo se interpretan en los dispositivos de destino. Por ejemplo: en el caso de la mensajería instantánea Jabber, los protocolos XMPP, TCP e IP son importantes conjuntos de reglas que permiten que se realice la comunicación.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Redes Convergentes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Redes múltiples de múltiples servicios&lt;/span&gt;&lt;br /&gt;El teléfono tradicional, la radio, la televisión y las redes de datos informáticos tienen su propia versión individual de los cuatro elementos básicos de la red&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Redes convergentes&lt;/span&gt;&lt;br /&gt;Una plataforma definida como una red convergente. El flujo de voz, vídeo y datos que viajan a través de la misma red elimina la necesidad de crear y mantener redes separadas. En una red convergente todavía hay muchos puntos de contacto y muchos dispositivos especializados&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Redes de información inteligentes&lt;/span&gt;&lt;br /&gt;La plataforma de comunicaciones inteligentes del futuro ofrecerá mucho más que conectividad básica y acceso a las aplicaciones. La convergencia de los diferentes tipos de redes de comunicación en una plataforma representa la primera fase en la creación de la red inteligente de información.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Planificación para el futuro&lt;/span&gt;&lt;br /&gt;Se puede atribuir a la rápida expansión de Internet. Esta expansión creó una amplia audiencia y una base de consumo más grande.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Arquitectura de Internet&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Arquitectura de Red&lt;/span&gt;&lt;br /&gt;Las redes deben admitir una amplia variedad de aplicaciones y servicios, como así también funcionar con diferentes tipos de infraestructuras físicas. El término arquitectura de red, en este contexto, se refiere a las tecnologías que admiten la infraestructura y a los servicios y protocolos programados que pueden trasladar los mensajes en toda esa infraestructura.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Tolerancia a fallas&lt;/span&gt;&lt;br /&gt;Una red tolerante a fallas es la que limita el impacto de una falla del software o hardware y puede recuperarse rápidamente cuando se produce dicha falla&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Escalabilidad&lt;/span&gt;&lt;br /&gt;Una red escalable puede expandirse rápidamente para admitir nuevos usuarios y aplicaciones sin afectar el rendimiento del servicio enviado a los usuarios actuales&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Seguridad&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Las expectativas de privacidad y seguridad que se originan del uso de internetworks para intercambiar información empresarial crítica y confidencial excede lo que puede enviar la arquitectura actual.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Provisión de seguridad de red&lt;/span&gt;&lt;br /&gt;Comprometer la integridad de estos activos puede ocasionar serias repercusiones financieras y comerciales. Algunas de las consecuencias de la ruptura en la seguridad de la red son:&lt;br /&gt;• Interrupciones de red que impiden la realización de comunicaciones y de transacciones, con la consecuente pérdida de negocios,&lt;br /&gt;• Mal direccionamiento y pérdida de fondos personales o comerciales,&lt;br /&gt;• Propiedad intelectual de la empresa (ideas de investigación, patentes o diseños) que son robados y utilizados por la competencia, o&lt;br /&gt;• Detalles de contratos con clientes que se divulgan a los competidores o son hechos públicos, generando una&lt;br /&gt;Pérdida de confianza del mercado de la industria&lt;br /&gt;Las medidas de seguridad que se deben tomar en una red son:&lt;br /&gt;• evitar la divulgación no autorizada o el robo de información,&lt;br /&gt;• evitar la modificación no autorizada de información, y&lt;br /&gt;• evitar la Denegación de servicio.&lt;br /&gt;Los medios para lograr estos objetivos incluyen:&lt;br /&gt;• garantizar la confidencialidad,&lt;br /&gt;• mantener la integridad de la comunicación, y&lt;br /&gt;• garantizar la disponibilidad.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-weight: bold;"&gt;Garantizar la confidencialidad&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;La privacidad de los datos se logra permitiendo que lean los datos solamente los receptores autorizados y designados (individuos, procesos o dispositivos).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Mantener la integridad de las comunicaciones&lt;/span&gt;&lt;br /&gt;La integración de datos significa que la información no se alteró durante la transmisión de origen a destino. La integración de datos puede verse comprometida cuando al dañarse la información, ya sea en forma intencional o accidental, antes de que el receptor correspondiente la reciba.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Garantizar disponibilidad&lt;/span&gt;&lt;br /&gt;La garantía de confidencialidad e integridad son irrelevantes si los recursos de red están sobrecargados o no disponibles. Disponibilidad significa tener la seguridad de acceder en forma confiable y oportuna a los servicios de datos para usuarios autorizados.&lt;br /&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;ARQUITECTURA DE REDE TOLERANTE A FALLAS&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Su objetivo principal fue tener un medio de comunicación que pudiera soportar la destrucción de numerosos sitios e instalaciones de transmisión sin interrumpir el servicio. Esto implica que la tolerancia a fallas era el foco del esfuerzo del trabajo de diseño de &lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;internetwork&lt;/span&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; inicial.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;Redes orientadas a la conexión conmutadas por circuito.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: left; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Cuando una persona realiza una llamada utilizando un teléfono tradicional, la llamada primero pasa por un proceso de configuración en el cual se identifican todas las conmutaciones telefónicas entre la persona y el teléfono al que está llamando. Se crea un ruta temporal o circuito a través de las distintas ubicaciones de conmutación a utilizar durante la duración de la llamada telefónica.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Este tipo de red orientada a la conexión se llama red conmutada por circuito.&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt; &lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style=";font-family:Arial;color:black;"  &gt;Muchas redes conmutadas por circuitos otorgan prioridad al mantenimiento de conexiones de circuitos existentes a expensas de nuevas solicitudes de circuitos. En este tipo de red orientada a la conexión, una vez establecido el circuito, aunque no exista comunicación entre las personas en ningún extremo de la llamada, el circuito permanece conectado y los recursos se reservan hasta que una de las partes desconecta la llamada.&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: justify; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbBD-vLV5I/AAAAAAAAAXU/m9oLItQYSxo/s1600-h/Imagen8.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 279px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbBD-vLV5I/AAAAAAAAAXU/m9oLItQYSxo/s400/Imagen8.jpg" alt="" id="BLOGGER_PHOTO_ID_5347673881673684882" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="file:///C:/Users/maikol/AppData/Local/Temp/moz-screenshot-8.jpg" alt="" /&gt;&lt;img src="file:///C:/Users/maikol/AppData/Local/Temp/moz-screenshot-9.jpg" alt="" /&gt;&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbApXhd8DI/AAAAAAAAAXE/bmjMgQddXgY/s1600-h/Imagen7.jpg"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center; font-weight: bold;"&gt;ARQUITECTURA DE RED ESCALABLE&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Internet, hecho de una colección de redes públicas y privadas interconectadas, tiene una estructura jerárquica en capas para servicios de direccionamiento, designación y conectividad. En cada nivel o capa de la jerarquía, los operadores de red individual mantienen relaciones entre pares con otros operadores en el mismo nivel. Como resultado, el tráfico de redes destinado para servicios regionales y locales no necesita cruzar a un punto central para su distribución.&lt;br /&gt;&lt;br /&gt;La arquitectura de Internet actual, altamente escalable, no siempre puede mantener el ritmo de la demanda del usuario. Los nuevos protocolos y estructuras de  direccionamiento están en desarrollo para cumplir con el ritmo acelerado al cual se agregan los servicios y aplicaciones de Internet.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbB_dwlk_I/AAAAAAAAAXc/GFwdc-q0HBQ/s1600-h/Imagen9.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 258px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbB_dwlk_I/AAAAAAAAAXc/GFwdc-q0HBQ/s400/Imagen9.jpg" alt="" id="BLOGGER_PHOTO_ID_5347674903613379570" border="0" /&gt;&lt;/a&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;PROVISION DE CALIDAD DE SERVICIO&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;Las redes deben proporcionar servicios seguros, predecibles, mensurables y, a veces, garantizados. La arquitectura de red conmutada por paquetes no garantiza que todos los paquetes que conforman un mensaje en particular lleguen a tiempo, en el orden correcto, ni aun garantizan la llegada.&lt;br /&gt;&lt;br /&gt;Las redes también necesitan mecanismos para administrar el tráfico de redes congestionado. La congestión se genera cuando la demanda de recursos de red supera la capacidad disponible.&lt;br /&gt;&lt;br /&gt;En la mayoría de los casos, cuando el volumen de paquetes es mayor de lo que se puede transportar en la red, los dispositivos colocan los paquetes en cola en la memoria hasta que haya recursos disponibles para transmitirlos. Los paquetes en cola provocan retrasos. Si el número de paquetes en cola continúa aumentando, las colas de la memoria se llenan y los paquetes se descartan.&lt;br /&gt;&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;  &lt;p style="margin-top: 0pt; margin-bottom: 0pt; text-align: center; direction: ltr; unicode-bidi: embed; vertical-align: baseline;"&gt;&lt;span style="font-weight: bold;font-family:Arial;color:black;"  &gt;ASIGNACION DE PRIORIDADES&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;Las características de la información que se comunica también afectan su administración. Por ejemplo, el envío de una película utiliza una importante cantidad de recursos de red cuando se envía en forma continua, sin interrupción. Otros tipos de servicios, los e-mails, por ejemplo, no resultan tan demandantes en la red.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbCvLa7P5I/AAAAAAAAAXk/IUydFwL_1ko/s1600-h/Imagen10.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 268px;" src="http://4.bp.blogspot.com/_BfXOb8WZwPI/SjbCvLa7P5I/AAAAAAAAAXk/IUydFwL_1ko/s400/Imagen10.jpg" alt="" id="BLOGGER_PHOTO_ID_5347675723324407698" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center; font-weight: bold;"&gt;TENDENCIAS EN NETWORKING&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;La convergencia de los distintos medios de comunicación en una plataforma de red simple estimula el crecimiento exponencial de las capacidades de red. Existen tres tendencias principales que contribuyen a la futura estructura de las redes de información complejas:&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;• mayor cantidad de usuarios móviles,&lt;br /&gt;• proliferación de dispositivos aptos para la red, y&lt;br /&gt;• expansión de la gama de servicios.&lt;br /&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="PowerPoint.Slide"&gt;&lt;meta name="Generator" content="Microsoft PowerPoint 12"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbDTY9JClI/AAAAAAAAAX0/zxtmRPOu5lQ/s1600-h/Imagen11.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 379px;" src="http://3.bp.blogspot.com/_BfXOb8WZwPI/SjbDTY9JClI/AAAAAAAAAX0/zxtmRPOu5lQ/s400/Imagen11.jpg" alt="" id="BLOGGER_PHOTO_ID_5347676345432869458" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6036512248506103035?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6036512248506103035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6036512248506103035'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2009/06/la-vida-en-un-mundo-centrado-en-la-red.html' title='LA VIDA EN UN MUNDO CENTRADO EN LA RED'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_BfXOb8WZwPI/Sja2s6qJhRI/AAAAAAAAAV8/6bo0WeAFKuA/s72-c/SUBIR01.jpg' height='72' width='72'/></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6825450782523757749</id><published>2008-05-04T14:32:00.002-05:00</published><updated>2008-05-04T14:50:23.912-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='manuales'/><title type='text'>El mundo de ubuntu</title><content type='html'>&lt;center&gt;Manual básico Ubuntu GNU/Linux&lt;br /&gt;Versión (BETA) Breezy&lt;br /&gt;25/10/2005&lt;br /&gt;Sergio Blanco Cuaresma&lt;br /&gt;http://www.marblestation.com&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Introducción al Software Libre&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="justify"&gt;Además de aprender a utilizar Ubuntu (objetivo de este manual), es interesante conocer los orígenes del Software Libre y GNU/Linux. De esta forma podremos entender el modelo de desarrollo libre a partir de su definición. Esta sección esta dedicada a cubrir ese aspecto tan importante.&lt;br /&gt;&lt;br /&gt;Se invita al lector a saltar al apartado de instalación de Ubuntu, y retomar esta sección durante los momentos de espera de la instalación.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Historia&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Allá por el 1971, cuando la informática todavía no había sufrido su gran boom, las&lt;br /&gt;personas que hacían uso de ella, en ámbitos universitarios y empresariales, creaban y&lt;br /&gt;compartían el software sin ningún tipo de restricciones.&lt;br /&gt;Con la llegada de los años 80 la situación empezó a cambiar. Las computadoras más&lt;br /&gt;modernas comenzaban a utilizar sistemas operativos privativos1, forzando a los usuarios a aceptar condiciones restrictivas que impedían realizar modificaciones a dicho software.&lt;br /&gt;En caso de que algún usuario o programador encontrase algún error en la aplicación, lo único que podía hacer era darlo a conocer a la empresa desarrolladora para que esta lo solucionara. Aunque el programador estuviese capacitado para solucionar el&lt;br /&gt;problema y lo desease hacer sin pedir nada a cambio, el contrato le impedía que mejorase el software.&lt;br /&gt;Esta situación provocó la destrucción de comunidades cooperativas donde el software&lt;br /&gt;era compartido y cualquiera podía mejorarlo sin restricciones.&lt;br /&gt;El modelo de desarrollo de aplicaciones propietarias, a pesar de generar situaciones&lt;br /&gt;anti-sociales, se impuso con tal fuerza que en la actualidad hay aún personas convencidas de que no hay otra forma de hacer negocio.&lt;br /&gt;_______________________________________________________________________________&lt;br /&gt;1 Software privativo o propietario es aquel que impone fuertes restricciones al usuario final. Antónimo de&lt;br /&gt;Software Libre. &lt;br /&gt;&lt;br /&gt;Durante la etapa de transición al modelo privativo, Richard M. Stallman, trabajador del laboratorio de Inteligencia Artificial del MIT (Massachusetts Institute of Technology), se percató que la sociedad estaba cambiando peligrosamente.&lt;br /&gt;El mismo Richard Stallman cuenta que por aquellos años, en el laboratorio habían&lt;br /&gt;recibido una impresora donada por una empresa externa. El dispositivo, que era&lt;br /&gt;utilizado en red por todos los trabajadores, parecía no funcionar a la perfección dado que cada cierto tiempo el papel se atascaba.&lt;br /&gt;Como agravante, no se generaba ningún aviso que se enviase por red e informase a los&lt;br /&gt;usuarios de la situación. La perdida de tiempo era constante, ya que en ocasiones, los trabajadores enviaban por red sus trabajos a imprimir y al ir a buscarlos se encontraban la impresora atascada y una cola enorme de trabajos pendientes.&lt;br /&gt;Richard Stallman decidió arreglar el problema, e implementar el envio de un aviso por red cuando la impresora se bloqueara.&lt;br /&gt;Para ello necesitaba tener acceso al código fuente2 de los controladores de la  impresora.&lt;br /&gt;Pidió a la empresa propietaria de la impresora lo que necesitaba, comentando, sin pedir nada a cambio, que era lo que pretendía realizar. La empresa se negó a entregarle el código fuente.&lt;br /&gt;En ese preciso instante, Richard Stallman se vio en una encrucijada, debía elegir entre aceptar el nuevo software privativo firmando acuerdos de no revelación y acabar&lt;br /&gt;desarrollando más software privativo con licencias restrictivas, que a su vez deberían ser más adelante aceptadas por sus propios colegas.&lt;br /&gt;Richard Stallman se negó a aceptar el nuevo software privativo, dado que este le obligaría a firmar acuerdos de no revelación. Quería evitar acabar contribuyendo a la expansión de ese tipo de software, el cual solo conseguía generar una sociedad más dividida y con menos libertades.&lt;br /&gt;Abandonó el MIT en 1984, para evitar &lt;br /&gt;_________________________________________________________________________________&lt;br /&gt;2 Haciendo una analogía con la cocina, los binarios o ejecutables serian un plato cocinado mientras que el código fuente corresponde a la receta de cocina, esta es necesaria para poder modificar y mejorar.&lt;br /&gt;&lt;br /&gt;problemas de propiedad del software, e inició un proyecto para intentar formar una&lt;br /&gt;comunidad de personas, en las que compartir el código volviese a ser algo natural.&lt;br /&gt;El proyecto fue denominado GNU (GNU's Not Unix), su finalidad era la construcción de un sistema operativo compatible con UNIX pero completamente libre.&lt;br /&gt;Más tarde construiría junto a diversos hackers de su entorno lo que se conoce&lt;br /&gt;actualmente como la Free Software Foundation, una fundación sin ánimo de lucro&lt;br /&gt;que tiene como objetivo proteger y defender el software libre y sus&lt;br /&gt;usuarios/programadores.&lt;br /&gt;El primer programa desarrollado fue GNU Emacs, un editor extensible mediante LISP.&lt;br /&gt;Richard Stallman, inspirándose en algunos emails donde observó que se utilizaba el&lt;br /&gt;copyright para permitir a otros usuarios realizar copias del contenido, decidió&lt;br /&gt;elaborar una licencia de uso, que estableciera ciertas reglas para asegurar la libertad de su editor Emacs. De este modo se podrían evitar problemas con programadores no solidarios que decidiesen coger código libre, modificarlo, distribuirlo en formato binario y no compartir dichos cambios después.&lt;br /&gt;La licencia fue llamada GNU Emacs License (desarrollada en consulta con el especialista en leyes de propiedad intelectual Mark Fischer en el 1985), la cual establecía un contrato en el que se ofrecía el programa garantizando las mayores libertades posibles y animaba a otros programadores a adoptar dicha licencia.&lt;br /&gt;El segundo programa desarrollado fue el depurador GNU Debugger. Este también&lt;br /&gt;necesitaba una licencia y GNU Emacs License encajaba a la perfección. Por tanto decidió renovar dicha licencia dotándola de un nombre más genérico (cosa que ya había sido demandada por diversos usuarios que querían usar la licencia en sus creaciones), así nació la GNU General Public License (GPL) que en 1989 vio la luz con la versión 1.0. Sobre la misma época (1989), en el Computer Science Research Group (CSRG) de la&lt;br /&gt;Universidad de California en Berkeley poseían toda una serie de plicaciones,  desarrolladas con el objetivo de mejorar UNIX, que formaron lo que se conoce como&lt;br /&gt;“BSD Unix”. Esas aplicaciones y mejoras fueron desarrolladas mediante contratos con DARPA pero depuradas y mantenidas por hackers comunicados por red. Sin embargo, hasta&lt;br /&gt;finales de los 80 no fue liberado parte del código con licencia BSD (licencia libre con matices diferentes a la GPL).&lt;br /&gt;No obstante, en ese primer periodo aún existían herramientas propietarias vitales&lt;br /&gt;para el sistema y no podían ser redistribuidas (sólo se entregaban a los poseedores de una licencia de UNIX original). Estas fueron reescritas más adelante bajo una licencia libre.&lt;br /&gt;Durante los años 90 empezaron a surgir muchas iniciativas libres. Gracias a la&lt;br /&gt;diversificación de Internet se dieron grandes facilidades para construir comunidades con estas características.&lt;br /&gt;Es especialmente interesante el caso de X Window System, cuyo código fue el primer&lt;br /&gt;caso de software libre fundado por un consorcio de empresas y el cual aún perdura.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6825450782523757749?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6825450782523757749'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6825450782523757749'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2008/05/el-mundo-de-ubuntu.html' title='&lt;center&gt;El mundo de ubuntu&lt;/center&gt;'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-3862785355354192575</id><published>2008-04-27T13:14:00.009-05:00</published><updated>2008-04-27T14:11:29.626-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compiladores'/><title type='text'>ANALISIS SINTACTICO</title><content type='html'>&lt;center&gt;&lt;a name="indice"&gt;INDICE DEL ANALISIS SINTACTICO.&lt;/a&gt;&lt;center&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema1"&gt;INTRODUCCIÓN&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema2"&gt;ANÁLISIS SINTÁCTICO&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema3"&gt;METODO TOP-DAWN&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema4"&gt;RECURSIVO DESCENDENTE&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema5"&gt;BOTTOM-UP&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema6"&gt;DE PROCEDENCIA SIMPLE&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema7"&gt;MATRICES DE TRANSICIÓN&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema8"&gt;GRAMÁTICAS LIBRES DE CONTEXTO&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema9"&gt;ÁRBOLES DE DERIVACIÓN&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema10"&gt;FORMA NORMAL DE CHOMSKY&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema11"&gt;CONCLUSIÓN&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema12"&gt;BIBLIOGRAFIA&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema1"&gt;INTRODUCCIÓN.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Todo lenguaje de programación obedece a unas reglas que describen la estructura sintáctica de los programas bien formados que acepta. En pascal, por ejemplo, un programa se compone de bloques; un bloque, de sentencias; una sentencia, de expresiones; una expresión, de componentes léxicos; y así sucesivamente hasta llegar a los caracteres básicos. Se puede describir la sintaxis de las construcciones de los lenguajes de programación por medio de gramáticas de contexto libre o utilizando notación BNF (Backus-Naur Form). Las gramáticas formales ofrecen ventajas ignificativas a los diseñadores de lenguajes y a los desarrolladores de compiladores.&lt;br /&gt;&lt;br /&gt;Una gramática da una especificación sintáctica precisa y fácil de entender de un lenguaje de programación.&lt;br /&gt;A partir de algunas clases de gramáticas se puede construir automáticamente un analizador sintáctico eficiente que determine si un programa fuente está sintácticamente  bien formado. Otra ventaja es que el proceso de construcción del analizador que de otro modo podrían pasar sin detectar en la fase inicial de diseño de un lenguaje y de su compilador.&lt;br /&gt;Una gramática diseñada adecuadamente imparte una estructura a un lenguaje de programación útil para la traducción de programas fuente a código objeto correcto y para la detección de errores. Existen herramientas para convertir descripciones de traducciones basadas en gramáticas en programas operativos.&lt;br /&gt;Los lenguajes evolucionan con el tiempo, adquiriendo nuevas construcciones y realizando tareas adicionales. Estas nuevas construcciones se pueden añadir con más facilidad a un lenguaje cuando existe una aplicación basada en una descripción gramatical del lenguaje.&lt;br /&gt;La mayor parte del presente trabajo está dedicada a los componentes del análisis sintáctico, así como los conceptos básicos y otros temas de gran interés.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema2"&gt;¿Qué es el Analizador Sintáctico?&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Es la fase del analizador que se encarga de chequear el texto de entrada en base a una&lt;br /&gt;gramática dada. Y en caso de que el programa de entrada sea válido, suministra el árbol&lt;br /&gt;sintáctico que lo reconoce.&lt;br /&gt;&lt;br /&gt;En teoría, se supone que la salida del analizador sintáctico es alguna representación del&lt;br /&gt;árbol sintáctico que reconoce la secuencia de tokens suministrada por el analizador léxico.&lt;br /&gt;En la práctica, el analizador sintáctico también hace:&lt;br /&gt;&lt;br /&gt;• Acceder a la tabla de símbolos (para hacer parte del trabajo del analizador&lt;br /&gt;semántico).&lt;br /&gt;&lt;br /&gt;• Chequeo de tipos (del analizador semántico).&lt;br /&gt;&lt;br /&gt;• Generar código intermedio.&lt;br /&gt;&lt;br /&gt;• Generar errores cuando se producen.&lt;br /&gt;&lt;br /&gt;En definitiva, realiza casi todas las operaciones de la compilación. Este método de trabajo&lt;br /&gt;da lugar a los métodos de compilación dirigidos por sintaxis.&lt;br /&gt;El análisis sintáctico convierte el texto de entrada en otras estructuras (comúnmente árboles), que son más útiles para el posterior análisis y capturan la jerarquía implícita de la entrada. Un analizador léxico crea tokens de una secuencia de caracteres de entrada y son estos tokens los que son procesados por el analizador sintáctico para construir la estructura de datos, por ejemplo un árbol de análisis o árboles abstractos de sintaxis.&lt;br /&gt;El análisis sintáctico también es un estado inicial del análisis de frases de lenguaje natural. Es usado para generar diagramas de lenguajes que usan flexión gramatical, como los idiomas romances o el latín. Los lenguajes habitualmente reconocidos por los analizadores sintácticos son los lenguajes libres de contexto. Cabe notar que existe una justificación formal que establece que los lenguajes libres de contexto son aquellos reconocibles por un autómata de pila, de modo que todo analizador sintáctico que reconozca un lenguaje libre de contexto es equivalente en capacidad computacional a un autómata de pila.&lt;br /&gt;Los analizadores sintácticos fueron extensivamente estudiados durante los años 70 del siglo XX, detectándose numerosos patrones de funcionamiento en ellos, cosa que permitió la creación de programas generadores de analizadores sintáticos a partir de una especificación de la sintaxis del lenguaje en forma Backus-Naur por ejemplo, tales y como yacc, GNU bison y javacc.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema3"&gt;TIPOS DE ANALIZADORES SNTACTICOS.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Existen dos tipos básicos de analizadores para las gramáticas libres de contexto: los &lt;&lt;top-down&gt;&gt; o descendente y los &lt;&lt;bottom-up&gt;&gt; o ascendentes. Los ascendentes intentan construir el árbol desde las hojas hasta la raíz, mientras que los descendentes comienzan por la raíz y bajan hasta las hojas. &lt;br /&gt;&lt;br /&gt;&lt;center&gt;ANALIZADORES SINTACTICOS DESCENDENTES &lt;br /&gt;(Top-down).&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;Se puede considerar un analizador  descendente como una técnica que intenta encontrar una derivación &lt;&lt;más a la izquierda&gt;&gt; de la cadena de entrada. También podemos considerarlo como una técnica que intenta construir un árbol sintáctico de la cadena de entrada, comenzando por la raíz y creando los nodos a partir de ella hasta llegar a las hojas.&lt;br /&gt;Consideremos el siguiente fragmento de gramática, que describe la estructura de un lenguaje dado:&lt;br /&gt;&lt;br /&gt;&lt;PROG&gt;   ::: = module &lt;DECLS&gt; ; &lt;PROCS end&lt;br /&gt;&lt;DECLS&gt;  ::: = d | d ; &lt;DECLS&gt;&lt;br /&gt;&lt;PRCOS&gt; ::: = p | p ; &lt;PROCS&gt;&lt;br /&gt;&lt;br /&gt;Dada la cadena de entrada siguiente, &lt;br /&gt;&lt;br /&gt;Module d ; d ; p ; end&lt;br /&gt;&lt;br /&gt;Para construir el árbol sintáctico descendente correspondiente, creamos inicialmente un árbol que consiste en un único nodo etiquetado con el símbolo inicial: PROG. Entonces usamos la primera para expandir el árbol y obtenemos:&lt;br /&gt;&lt;br /&gt;PROG&lt;br /&gt;          ____________________________________________________________&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    Module                             DECLS                      ;                        PROCS          end&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;•Para una secuencia de palabras, construye un árbol de análisis sintáctico desde la raíz a las hojas.&lt;br /&gt;&lt;/P&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema4"&gt;RECURSIVO DESCENDETE.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Una gramática permite la implementación de formas de analizadores sintácticos. La más importante es la recursiva descendente, que vemos a continuación, y en la cual cada no terminal es una llamada a su correspondiente procedimiento analizador.&lt;br /&gt;&lt;br /&gt;Un analizador recursivo descendente tiene las características que se desprenden de su nombre: un analizador sintáctico de tipo descendente (top-down) e implementado con un lenguaje recursivo. El mecanismo de análisis es el siguiente:&lt;br /&gt;&lt;br /&gt;1.- Existirá un procedimiento o función por cada símbolo no terminal.&lt;br /&gt;&lt;br /&gt;2.- Dada  una producción, y una vez que estamos en el procedimiento que trata el símbolo no terminal de la parte izquierda, para analizar la parte derecha se hará lo siguiente:&lt;br /&gt;&lt;br /&gt;Si hay alternativas, llamar al analizador léxico (si no está ya avanzado), con el fin de obtener un nuevo token del texto fuente. Una vez leído, se compara el token con los símbolos directores de  dichas alternativas. Si el token pertenece a uno de esos conjuntos de símbolos directores, sigue el análisis por el procedimiento que trate la alternativa correspondiente. Si no pertenece, se tratara de un error sintáctico.&lt;br /&gt;&lt;br /&gt; Si no hay alternativas, o bien ya dentro de una alternativa, el análisis será el siguiente:   si el primer símbolo es un no terminal, llamar al procedimiento correspondiente. Si es un terminal, llamar al analizador léxico (si no está avanzado), comparar y seguir el análisis si el token leído coincide con dicho símbolo terminal. &lt;br /&gt;&lt;/P&gt;  &lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema5"&gt;&lt;center&gt;Analizadores sintácticos ascendentes &lt;br /&gt;(Bottom-up).&lt;/center&gt;&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;•Para una secuencia de palabras, construye un árbol de análisis sintáctico desde las hojas a la raíz.&lt;br /&gt;&lt;br /&gt; Se denominan ascendentes porque pretenden construir un árbol sintáctico parra una determinada cadena de entrada empezando por las hojas y constituyendo el árbol hasta llegar a la raíz. También se puede considerar este proceso como la &lt;&lt;reducción&gt;&gt; de una cadena de símbolos al símbolo inicial de la gramática, es decir, una derivación en sentido inverso.&lt;br /&gt;&lt;br /&gt;En cada paso del proceso, una cadena que coincida con la parte derecha de la producción se remplaza por el símbolo no terminal de la parte izquierda de dicha producción. Veamos un ejemplo con la siguiente gramática donde aplicaremos IDENT y CONST y el símbolo inicial EXP (abreviaturas de IDENTIFICADOR, CONSTANTE Y EXPRESIÓN). La cadena de entrada es:&lt;br /&gt;&lt;br /&gt;3 + a -5&lt;br /&gt;Y la queremos reducir al símbolo de la gramática, que era EXP. Según la definición de la gramática, el símbolo inicial EXP tenía nueve producciones alternativas. Para reducir la cadena dada al símbolo EXP, lo que hacemos es identificar subcadenas que coincidan con la parte derecha de alguna producción de EXP. En nuestro caso, 3, a y 5. Tomamos el de más a la izquierda, 3, y lo sustituimos por su parte derecha en la producción, que era CONST, con lo que la cadena de entrada se nos queda en CONST + a -5. Hacemos lo mismo con a y 5 y la cadena resultante es CONST + IDENT + CONST. Con esta cadena volvemos a realizar el mismo proceso, buscar subcadenas que coincidan con la parte derecha de alguna producción del símbolo inicial EXP. Tanto CONST como IDENT son derivaciones inmediatas de EXP, luego podemos reducir la cadena actual a EXP + EXP – EXP. A su vez, (siguiendo siempre el criterio de tomar las subcadenas de más a la izquierda), tenemos que EXP + EXP se puede reducir a EXP, con lo que nos queda EXP – EXP. Y esta cadena también es una producción de EXP, con lo cual se reduce a EXP. Luego la cadena 3 + a -5 es derivable de EXP y por tanto pertenece al lenguaje generado por la gramática.&lt;br /&gt;&lt;br /&gt;Cada reemplazamiento de la parte derecha de una producción se denomina &lt;&lt;reducción&gt;&gt;. Así, con una serie de ocho reducciones hemos podido reducir 3 + a – 5 al símbolo inicial EXP. En realidad, estas reducciones equivalen a una &lt;&lt;derivación más a la derecha &gt;&gt; al revés:&lt;br /&gt;&lt;br /&gt;3 + a – 5CONST + a – 5CONST +IDENT- 5  CONST+ IDENT – CONST……..&lt;br /&gt;…. EXP +IDENT – CONST EXP + EXP – CONST EXP + EXP –EXP…….&lt;br /&gt;…. EXP – EXP EXP&lt;br /&gt;&lt;br /&gt;En los analizadores ascendentes existen problemas cuando la gramática es ambigua, lo que significa que se pueden encontrar dos derivaciones más a la derecha para una misma cadena.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema6"&gt;DE PROCEDENCIA SIMPLE.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Este tipo de análisis incluye, en el proceso de construcción del Árbol de Derivación, una serie de reducciones a través de las cuales reemplaza un substring que representa la parte derecha de una producción (handle) por su respectiva parte izquierda. Es decir que va ascendiendo en el árbol desde los descendientes hacia el respectivo nodo padre. Bajo esta técnica separte de la cadena w ∈ Σ a reconocer y se trata de alcanzar el símbolo distinguido S. Al igual que la técnica Top-Down, w ∈ Σ sólo es aceptada si se logra construir el Árbol de derivación para w.&lt;br /&gt;&lt;br /&gt;En este caso, la cadena w representa las hojas de un posible Árbol de Derivación para w. El proceso de reducción puede ser visto como la conexión hacia arriba de el o los descendientes con su respectivo nodo padre.&lt;br /&gt;El resultado de la aplicación de esta técnica es la secuencia de reducciones realizadas, que es equivalente a la inversa de una secuencia de derivaciones de más a la derecha para w partiendo de S, también llamado right parser.&lt;br /&gt;&lt;br /&gt;Análisis Sintáctico y determinismo.&lt;br /&gt;Cualquiera sea el enfoque que se considere, debemos tener en cuenta que durante el proceso de construcción del Árbol de Derivación, ya sea usando una técnica Top-Down o Bottom-Up, se deben tomar decisiones que eventualmente podrían involucrar más de una alternativa. Por ejemplo, un nodo del árbol (usando un algoritmo Top-Down) podría ser expandido de diferentes maneras, pudiendo llevar a un no determinismo. Desde el punto de vista teórico, esto no tiene implicaciones muy severas. Sin embargo, desde el punto de vista práctico es inadmisible, ya que tornaría a la implementación en un proceso completamente ineficiente en cuanto al tiempo insumido para el reconocimiento de una cadena.&lt;br /&gt;&lt;br /&gt;Si bien ambas técnicas de parsing son igualmente importantes, veremos una implementación práctica de la técnica Bottom-up, dado que una implemetación práctica de la técnica Top-dwn es dada en la materia Compiladores. Desde el punto de vista teórico, veremos implementaciones de ambas técnicas usando APD’s a fin de entender gradualmente el concepto de análisis sintáctico.&lt;br /&gt;&lt;/P&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema7"&gt;MATRICES DE TRANSICIÓN.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Se puede utilizar una matriz bidimensional para representar un árbol de análisis sintáctico.&lt;br /&gt;Para obtener los parámetros de la matriz de transmisión a partir de la matriz de impedancia, recordemos la matriz de impedancia para dos puertos y cambiemos el signo para I2 de acuerdo a la grafica (6a):&lt;br /&gt;&lt;br /&gt;										(71)&lt;br /&gt;&lt;br /&gt;Que corresponde a:&lt;br /&gt;&lt;br /&gt;											(72)&lt;br /&gt;											(73)&lt;br /&gt;&lt;br /&gt;Reemplazando los voltajes V1 y V2 en las ecuaciones (68) para los parámetros A, B, C, D se obtiene:&lt;br /&gt;&lt;br /&gt;										(74)&lt;br /&gt;&lt;br /&gt;					(75)&lt;br /&gt;&lt;br /&gt;										(76)&lt;br /&gt;&lt;br /&gt;									(77)&lt;br /&gt;&lt;br /&gt;Si la red es reciproca, a partir de estas últimas ecuaciones se llega a que AD – BC =1.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;En la siguiente tabla se tienen algunos parámetros ABCD para algunos circuitos de dos puertos&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema8"&gt;GRAMATICAS LIBRES DE CONTEXTO.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;Gramáticas libres de contexto (GLC), o de tipo 2: las reglas son de la forma X  a, donde X es una variable y a es una cadena que puede contener variables y constantes.&lt;br /&gt;Estas gramáticas producen los lenguajes libres de contexto (abreviado “LLC”).&lt;br /&gt;&lt;br /&gt;Podemos ver que la gramática del español dada arriba es una GLC, pero no podría ser una gramática regular, pues hay varias reglas que no  corresponden al formato de las reglas de las gramáticas regulares. Se ve por lo tanto que el formato de las reglas es menos rígido en las GLC que en las gramáticas regulares, y así toda gramática regular es GLC pero no viceversa&lt;br /&gt;.&lt;br /&gt;Por ejemplo, el lenguaje {aⁿbⁿ} –que no es regular, ya que tiene la gramática libre de contexto con las siguientes reglas:&lt;br /&gt;&lt;br /&gt;1.- S  aSb&lt;br /&gt;2.-  S  ab&lt;br /&gt;&lt;br /&gt;Como vimos en el caso de las gramáticas regulares, aplicar una regla X  a de una gramática consiste en remplazar X por a en una palabra. Por ejemplo, la regla S  aSb se puede aplicar a una palabra aaSbb para obtener la palabra aaaSbbb, en donde es fácil var que reemplazamos S por aSb.&lt;br /&gt;&lt;br /&gt;Al proceso de aplicar una regla se le conoce como “paso de derivación”, y se denota usando una flecha gruesa “”, como en aaSbb  aaaSbbb (aplicando una regla S  aSb).&lt;br /&gt;&lt;br /&gt;Una secuencia de pasos de derivación a partir de una variable especial de la gramatica llamada “símbolo inicial” se llama simplemente derivación. Por ejemplo, una derivación de la palabra “aaabbb” utilizando la gramatica de {aⁿbⁿ} sería (suponiendo que S es el símbolo inicial):&lt;br /&gt;&lt;br /&gt;S  aSb  aaSbb  aaabbb&lt;br /&gt;&lt;br /&gt;Como un ejemplo adicional, la gramática con las reglas siguientes permite generar expresiones aritméticas con sumas y multiplicaciones de enteros:&lt;br /&gt;&lt;br /&gt;1.- E  E + T&lt;br /&gt;2.- E  T&lt;br /&gt;3.- T  T * F&lt;br /&gt;4.- T  F&lt;br /&gt;5.- F  CF&lt;br /&gt;6.- F  C&lt;br /&gt;7.- C  0|1|2|3|4|5|6|7|8|9&lt;br /&gt;&lt;br /&gt;El símbolo inicial aquí es E, las constantes son +, * y las cifras 0….9; E, T, F, C son variables.&lt;br /&gt;Con esta gramática podemos generar, por ejemplo, la expresión 25 + 3 * 12 de la manera siguiente:&lt;br /&gt;EXPRESIÓN&lt;br /&gt;JUSTIFICACIÓN&lt;br /&gt;E&lt;br /&gt;Símbolo inicial, inicia derivación&lt;br /&gt;E+T&lt;br /&gt;Aplicación 1ª. regla&lt;br /&gt;T+T&lt;br /&gt;2ª. Regla, sobre la E&lt;br /&gt;F+T&lt;br /&gt;4ª. Regla, sobre la T izquierda&lt;br /&gt;CF+T&lt;br /&gt;5ª. Regla, sobre F&lt;br /&gt;2F+T&lt;br /&gt;7ª. Regla&lt;br /&gt;2C+T&lt;br /&gt;6ª. regla&lt;br /&gt;25+T&lt;br /&gt;7ª. regla&lt;br /&gt;25+T*F&lt;br /&gt;3ª. regla&lt;br /&gt;25+F*F&lt;br /&gt;4ª. regla&lt;br /&gt;25+C*F&lt;br /&gt;6ª. Regla, sobre la F izquierda&lt;br /&gt;25+3*F&lt;br /&gt;7ª. regla&lt;br /&gt;25+3*CF&lt;br /&gt;5ª. regla&lt;br /&gt;25+3*1F&lt;br /&gt;7ª. regla&lt;br /&gt;25+3*1C&lt;br /&gt;6ª. regla&lt;br /&gt;25+3*12&lt;br /&gt;7ª. regla&lt;br /&gt;&lt;br /&gt;Más adelante veremos una herramienta, los “arboles de derivación”, que permiten encontrar más fácilmente y visualizar mejor la derivación de las palabras a partir del símbolo inicial, aunque su formalización es menos directa que la simple derivación paso a paso que hemos mostrado.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema9"&gt;ARBOLES DE DERIVACIÓN.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;                                                       S          &lt;br /&gt;&lt;br /&gt;  S   S&lt;br /&gt;&lt;br /&gt;(   S   )     (   )&lt;br /&gt;                                                   &lt;br /&gt;                                                S      S&lt;br /&gt;&lt;br /&gt;                                             (    )      (    )&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Figura 4.1: paréntesis bien balanceados.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Las GLC tienen la propiedad de que las derivaciones pueden ser representadas en forma arborescente. Por ejemplo, considérese la gramática siguiente para producir el lenguaje de los paréntesis bien balanceados, que tiene palabras como (()), ()(), (()())(), pero no a (() ni )(  :&lt;br /&gt;1.- S  SS&lt;br /&gt;2.- S  (S)&lt;br /&gt;3.- S  ()&lt;br /&gt;&lt;br /&gt;Usando esta gramática, la palabra (()())() puede ser derivada de la manera que se ilustra en la figura 4.1. En dicha figura se puede apreciar la estructura que se encuentra implícita en la palabra (()())(). A estas estructuras se les llama árboles de derivación, o también árboles de compilación –por usarse extensivamente en los compiladores- y son de vital importancia para la teoría de los compiladores de los lenguajes de programación.&lt;br /&gt;&lt;br /&gt;Se puede considerar que un árbol de derivación es más abstracto que una derivación “lineal” –es decir, una sucesión S  …  w- en el sentido de que para un solo árbol de derivación puede haber varias derivaciones lineales, según el orden en que se decida “expandir” los no terminales. Por ejemplo, para el árbol de la figura de arriba, hay al menos las derivaciones siguientes (anotamos como subíndice de  el número de regla aplicado):&lt;br /&gt;&lt;br /&gt;1.- S 1 SS 2 (S) S 3 (S) () 1 (SS) () 3 (S ()) () 3 (() ()) ().&lt;br /&gt;2.- S 1 SS 3 S() 2 (S) () 1 (SS) () 3 (() S) () 3 (() ()) ().&lt;br /&gt;&lt;br /&gt;Formalmente, un árbol de derivación es un grafo dirigido arborescente definido de la manera siguiente:&lt;br /&gt;&lt;br /&gt;Definición.- Sea G = (V, ∑, R, S) una GLC. Entonces un árbol de derivación cumple las siguientes propiedades:&lt;br /&gt;&lt;br /&gt;1.- Cada nodo tiene una etiqueta.&lt;br /&gt;2.- La raíz tiene etiqueta S.&lt;br /&gt;&lt;br /&gt;3.- La etiqueta de los nodos que no son hojas debe estar en V, y las de las hojas en ∑U {€}.&lt;br /&gt;&lt;br /&gt;4.- Si un nodo n tiene etiqueta A, y los nodos n1,……., nm  son sus hijos (de izquierda a derecha), con etiquetas respectivamente A1,….., Am, entonces AA1,…, Am € R.&lt;br /&gt;&lt;br /&gt;Definición.- la cadena de caracteres que resulta de concatenar terminales encontradas en las etiquetas de los nodos hoja, en un recorrido en orden del árbol de derivación, se llama el producto del árbol.&lt;br /&gt;&lt;br /&gt;Es decir, al efectuar un recorrido en orden del árbol de derivación recuperamos la cadena a partir de la cual se construyó dicho árbol. Así, el problema de “compilar” una cadena de caracteres consiste en construir el árbol de derivación a partir del producto de éste.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema10"&gt;FORMA NORMAL DE CHOMSKY.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;En ocasiones es necesario expresar una GLC siguiendo un formato más preciso de las reglas que la simple forma Aa. Estos “estándares” reciben el nombre de formas normales.&lt;br /&gt;Vamos a estudiar una de las formas normales más conocidas, la forma normal de Chomsky (FNCH).&lt;br /&gt;La FNCH consiste en que las reglas pueden tener dos formas:&lt;br /&gt;&lt;br /&gt;1.- A α, a € ∑&lt;br /&gt;2.- ABC, con B, C  € V&lt;br /&gt;Esta forma normal, aparentemente tan arbitraria, tiene por objeto facilitar el análisis sintáctico de una palabra de entrada, siguiendo la estrategia siguiente: Se trata de construir el árbol de derivación de w de arriba hacia abajo (llamado “top-down” en inglés), y por consiguiente se supone inicialmente que el símbolo de entrada w en dos pedazos, w = α β, para luego tomar alguna regla SAB , y tratar de verificar si se puede derivar α a partir de A y b a partir de B, es decir: S … w si:&lt;br /&gt;&lt;br /&gt;1.- w € ∑, hay una regla Sw&lt;br /&gt;&lt;br /&gt;2.-w = α β, hay una regla SAB, con A….   α, y B…..  β&lt;br /&gt;Por ejemplo, considérese la siguiente gramática para el lenguaje de los paréntesis bien balanceados, en forma normal de Chomsky (damos sus reglas):&lt;br /&gt;&lt;br /&gt;1.- SXY&lt;br /&gt;2.-X(&lt;br /&gt;3.-YSZ&lt;br /&gt;4.-Z)&lt;br /&gt;5.-SSS&lt;br /&gt;6.-SXZ&lt;br /&gt;Supongamos que tenemos una palabra como (()) (), y queremos verificar si se puede derivar a partir de esta gramática. Hay que “partir” dicha palabra en dos pedazos, y escoger alguna&lt;br /&gt;            &lt;br /&gt;S&lt;br /&gt;&lt;br /&gt;                                                      S                   S&lt;br /&gt;&lt;br /&gt;                                             X           Y           X         Z&lt;br /&gt;&lt;br /&gt;                                                      S       Z       (           )&lt;br /&gt;&lt;br /&gt;                                                  X     Z     )&lt;br /&gt;&lt;br /&gt;                                                  (        )&lt;br /&gt;&lt;br /&gt;                                                Figura 4.3: Árbol de la palabra (()) ()&lt;br /&gt;&lt;br /&gt;Regla que produzca dos variables. Escogemos la quinta regla, SSS, y partimos la palabra en los pedazos (()) y (). Para que SS pueda generar (()) () ahora se necesitará que la primera S pueda generar (()), y la segunda pueda generar (). Estos son subproblemas muy similares al problema inicial. Tomemos el primero, es decir, a partir de S generar (()). Escogemos la regla SXY, y partimos la palabra en (y ()). Ahora X tiene la responsabilidad de generar (y Y la de generar ()). Por la segunda regla, X genera directamente (. Ahora tomamos el problema de generar ()) a partir de Y. escogemos la regla SSZ, y la separación en los pedazos () y ). Entonces Z produce directamente ), y queda por resolver cómo S produce (). Para ello, escogemos la regla SXZ, y finalmente  X produce ( y z se encarga de ),  con lo que terminamos el análisis. E árbol de compilación se presenta en la figura 4.3.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema11"&gt;CONCLUSIÓN.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;El trabajo descrito  representa una aportación significativa y original al análisis sintáctico de los lenguajes de adjunción de árboles y por extensión al procesamiento del lenguaje&lt;br /&gt;natural, a la inteligencia artificial, y a la teoría de autómatas y lenguajes formales.&lt;br /&gt;En este trabajo se ha mostrado que es posible establecer un camino evolutivo continuo en el que se sitúan los algoritmos de análisis sintáctico que incorporan las estrategias de análisis más importantes, tanto para el caso de las gramáticas de adjunción de árboles como para el caso de las gramáticas lineales de índices. Los diferentes algoritmos se han definido con esquemas de análisis sintáctico, de tal modo que los algoritmos más complejos se derivan a partir de los menos complejos aplicando una secuencia de transformaciones simples.&lt;br /&gt;En el caso de las gramáticas lineales de índices el resultado es doblemente interesante, pues&lt;br /&gt;si bien se ha esgrimido a su favor su adecuación como formalismo intermedio para el análisis de gramáticas de adjunción de árboles, lo cierto es que numerosas estrategias de  análisis para estas últimas no se hallaban incorporadas a ningún algoritmo de análisis sintáctico para gramáticas lineales de índices. En consecuencia, era necesario sacrificar la estrategia de análisis si se optaba por este enfoque, lo que limitaba enormemente su aplicación practica. Con el trabajo desarrollado hemos salvado ese obstáculo definiendo algoritmos de análisis sintáctico para gramáticas lineales de índices que incorporan la versión equivalente de las estrategias de análisis más populares para gramáticas de adjunción de árboles.&lt;br /&gt;En el caso de las gramáticas independientes del contexto es posible optar por un diseño modular en el cual se separa la definición y la ejecución de una determinada estrategia de análisis.&lt;br /&gt;En particular, es posible definir un algoritmo de análisis sintáctico como un conjunto de transiciones de un autómata a pila, probablemente no determinista, el cual puede ser interpretado eficientemente mediante las técnicas de tabulación disponibles. Este enfoque presenta ventajas evidentes, entre la cuales cabe citar la simplificación de las pruebas de corrección de los algoritmos, los cuales son mas fáciles de comprender y, al ser ejecutados en un entorno homogéneo, son fácilmente comparables. En este trabajo hemos adaptado este enfoque a los lenguajes de adjunción de árboles de derivación, proporcionando modelos de autómata con los que describir los algoritmos de análisis y técnicas de tabulación con las que pueden ser ejecutados eficientemente.&lt;br /&gt;&lt;br /&gt;Finalmente hemos analizado que dentro de los analizadores sintácticos que vimos, pudimos notar la diferencia entre los que son descendentes y los ascendentes,  y sus principales características, viendo también la forma normal de Chomsky que es de gran importancia en el análisis sintáctico.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="tema12"&gt;BIBLIOGRAFIA.&lt;/a&gt;&lt;br /&gt;&lt;p align="justify"&gt;&lt;br /&gt;1.-ALFRED V. AHO, RAVI SETHI, JEFFREY D ULLMAN, PEDRO FLORES        SUÁREZ, PERE BOTELLA I LÓPEZ.&lt;br /&gt;    *Compiladores: Principios, Técnicas y Herramientas: Pearson Education, 1988.&lt;br /&gt;&lt;br /&gt;2.- RAMON F. BRENA.&lt;br /&gt;      *Autómatas y Lenguajes: Tecnológico de Monterrey, 2003.&lt;br /&gt;&lt;br /&gt;3.- SERGIO GÁLVEZ ROJAS, MIGUEL ÁNGEL MORA MATA.&lt;br /&gt;     *Java a Tope: Traductores Y Compiladores Con Lex/yacc, Jflex/cup Y Javacc:   Universidad de Málaga, 2005.&lt;br /&gt;&lt;br /&gt;4.- GONZALO SÁNCHEZ DUEÑAS, SANCHEZ G. VALVERDE, JUAN ANTONIO   VALVERDE ANDREU.&lt;br /&gt;      * Compiladores e intérpretes: Ediciones Días de Santos, S.A., 1989.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p align="lefth"&gt;&lt;a href="#indice"&gt;Regresar al indice&lt;/a&gt;&lt;/p&gt;&lt;br /&gt; &lt;br /&gt;   &lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-3862785355354192575?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3862785355354192575'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3862785355354192575'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2008/04/analisis-sintactico.html' title='ANALISIS SINTACTICO'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-1689185308251661999</id><published>2008-01-27T14:08:00.001-06:00</published><updated>2008-04-27T13:31:48.211-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Base de datos II.'/><title type='text'>BASE DE DATOS II.</title><content type='html'>&lt;html&gt;&lt;head&gt;&lt;title&gt;Unidad 1&lt;/title&gt;&lt;/head&gt;&lt;br /&gt;&lt;center&gt;&lt;h2&gt;&lt;a name="indice"&gt;INTRODUCCIÓN A LA GESTIÓN DE LA INFORMACIÓN.&lt;/a&gt;&lt;/h2&gt;&lt;/center&gt;&lt;h2&gt;&lt;center&gt;Tema 1. La importancia de la gestión de la información como recurso invaluable de una empresa.&lt;/center&gt;&lt;/h2&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema1"&gt;¿Qué es la información?&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema2"&gt;¿Para que nos sirve la información?&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema3"&gt;Formas de Administrar la información&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema4"&gt;Definición de una hoja de cálculo&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema5"&gt;Características de una hoja de cálculo (Excel)&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema6"&gt;Aplicaciones de una hoja de cálculo&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema7"&gt;Programas de hojas de cálculo&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema8"&gt;Definición de una base de datos&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema9"&gt;Características de las bases de datos&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="#tema10"&gt;Aplicaciones de bases de datos&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema1"&gt;1. ¿Qué es la información?&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;1. Diseño de Sistemas de Información (Burch-Grudnitski:) &lt;br /&gt;La información la componen datos que se han colocado en un contexto significativo y útil y se ha comunicado a un receptor, quien la utiliza para tomar decisiones. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;2. Sistemas de Información Gerencial ( Gordon B. Davis.) &lt;br /&gt;La información es un dato que ha sido procesado en una forma significativa para el receptor y su valor es real o percibido actualmente o en acciones prospectivas o en decisiones. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;3. Análisis y Diseño de Sistemas de Información: ( James A. Senn) &lt;br /&gt;Conjunto de datos que dentro de contexto significativo y útil, ésta se comunica a un receptor, quien la utiliza para tomar decisiones. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;4. Enciclopedia Británica &lt;br /&gt;En lo general el término información se refiere a los factores y opiniones enviadas y recibidas durante la vida diaria. Se obtiene información  directamente de otras personas, medios masivos, bancos de datos y de todos los fenómenos que observamos en el ambiente. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;5. Teoría General de Sistemas (John P- Van Gigh) &lt;br /&gt;Grados de libertad que existen en una situación específica para elegir entre señales, símbolos, mensajes o patrones a trasmitirse, que permiten la elaboración de un concepto. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;6. Sistemas de Información administrativa. (Robert G. Murdick) &lt;br /&gt;Es un signo o conjunto de signos que impulsan a la acción. Se distingue de los datos, porque estos no son estímulos de la acción, si no simplemente cadenas de caracteres o patrones sin interpretar. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;7. Análisis y Diseño de Sistemas. (Kendall y Kendall) &lt;br /&gt;Elemento decisivo que en un momento dado determina el éxito o fracaso del negocio ya que no es un producto exclusivamente colateral de la  operación de la empresa, sino que es si, es uno de los promotores de la misma. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;8. Administración (David R. Hampon).&lt;br /&gt;La base de toda información son los datos, los hechos que describen una entidad. Los datos se convierten en información al procesarlos y darles una forma significativa. La información es en realidad, datos transformados para comunicar un significado o conocimiento. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;9. Administración de Organizaciones. (Fremont E. Kast y James E. Rosenzweig) &lt;br /&gt;Es la sustancia de los sistemas de comunicaciones, en sus diversas formas (impulsos electrónicos, palabras escritas o habladas, informes formales), la información es un ingrediente básico para la toma de decisiones. Aumenta nuestros conocimientos y podría llevar a cambio en creencias, valores y actitudes. &lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema2"&gt;1.2¿Para que nos sirve la información?&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Desde hace mucho tiempo las organizaciones han reconocido la importancia de administrar recursos clave como la mano de obra y las materias primas. En la actualidad, la información se ha ganado el legítimo derecho de ser considerada como un recurso clave. Los encargados de la toma de decisiones por fin han comprendido que la información no es tan sólo un producto derivado de la conducción de los negocios, sino un impulsor de los mismos y que puede ser un factor de éxito o fracaso de una empresa.&lt;br /&gt;Para maximizar la utilidad de la información, una empresa debe administrarla de manera eficiente, como lo hace con los demás recursos. Los administradores deben comprender que los costos tienen una estrecha relación con la producción, distribución, seguridad, almacenamiento y recuperación de toda la información. A pesar de que la información está en todas partes, no es gratuita, y no se debe asumir que se podrá usar estratégicamente para aumentar la competitividad de una empresa.&lt;br /&gt;La amplia disponibilidad de computadoras en red, junto con el acceso a Internet y la World Wide Web, han propiciado una explosión de la información en la sociedad en general y en los negocios en particular. La administración de la información generada por computadoras difiere en aspectos importantes del manejo del manejo de los datos producidos por medios manuales. Por lo general hay una mayor cantidad de información de computadora por manejar. Los costos de organizarla y darle mantenimiento se pueden incrementar a niveles alarmantes, y con frecuencia los usuarios la consideran más precisa que la información obtenida por otros medios.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema3"&gt;1.3 Formas de Administrar la información &lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Existen básicamente dos métodos para administrar la información:&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;1.-Métodos Manuales&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;P&gt;&lt;br /&gt;2.-Métodos Electrónicos&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Los métodos manuales son todos aquellas formas de organizar la información sin uso de la tecnología, es decir, sin la intervención de ningún elemento electrónico (PC, PDA, PALM-TOP, GADGET, ETC.) Un ejemplo de métodos manuales serían los archiveros clásicos en donde se guardan documentos impresos.&lt;br /&gt;En contraparte lo métodos electrónicos basan su funcionamiento en el uso de tecnología, en particular de la computadoras. Ejemplos de esto son las hojas de cálculo y las bases de datos.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema4"&gt;1.4 Definición de una hoja de cálculo&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Una hoja de cálculo es un programa que permite manipular datos numéricos y alfanuméricos dispuestos en forma de tablas&lt;br /&gt;(la cual es la unión de filas y columnas). Habitualmente es posible realizar cálculos complejos con fórmulas y funciones y dibujar distintos tipos de gráficas.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema5"&gt;1.5 Características de una hoja de cálculo (Excel)&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;font color="blue"&gt; &lt;br /&gt;&lt;ul TYPE="disc"&gt;&lt;br /&gt;&lt;li&gt;Es un programa de fácil manejo y muy potente, se realizan buenos trabajos, como puede ser una factura o bien nóminas o también llevar un control de los apuntes del banco, llevar las comisiones, los pagos, etc.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Los cálculos en este programa no son comparables porque mientras no se especifique lo contrario son exactos - en Excel son muy precisos.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Una de las posibilidades de Excel es la de presentar los datos de forma estética: puedes ponerles varios tipos de bordes, usar varios tipos de letra...&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Puede utilizar hojas para almacenar datos numéricos&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Utilizar las órdenes y herramientas de Microsoft Excel para ejecutar cálculos con sus datos.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Puede ordenar, reorganizar, analizar y presentar sus datos fácilmente utilizando las prestaciones de Microsoft Excel, como son la copia, el desplazamiento, la ordenación, la consolidación, la representación gráfica y las tablas dinámicas.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Puede en Excel sumar filas y columnas.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Puede crear fórmulas para realizar cálculos tan simples como sumar los valores de dos celdas, o tan complejos como encontrar la desviación de un valor concreto con respecto a un conjunto de valores.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;La utilización de las casillas del excel para realizar evaluaciones de una misma función con diferentes valores, es una de las características principales de este herramienta&lt;/li&gt;&lt;br /&gt;&lt;li&gt;En excel podemos insertar y/o eliminar celdas, filas y columnas, diferente si trabajamos manualmente, ya que tendríamos que realizar el trabajo casi completo nuevamente si necesitaramos una fila o una columna.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Podemos crear gráficos. Un gráfico es la representación gráfica de los datos de una hoja de cálculo facilitando de esta manera su interpretación. A la hora de crear un gráfico, Excel dispone de un asistente que nos guiará en la creación de éste. Puede crear gráficos de dos formas: en la misma hoja que sus datos o en una hoja de gráfico aparte en el mismo libro de trabajo. &lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema6"&gt;1.6 Aplicaciones de una hoja de cálculo&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;La prestación fundamental de estas aplicaciones informáticas es que pueden elaborar enormes hojas de cálculo realizando rápidamente las tareas repetitivas y aprovechando la gran capacidad de cálculo matemático de los actuales procesadores. Así el programa vuelve a calcular automáticamente cualquier fórmula matemática de la hoja de cálculo que tenga como operando alguna celda de aquellas en las que se ha modificado su contenido numérico. También se le puede dar una gran variedad de características de formato, como tamaño, tipo de fuente, formato numérico, estilo y color; a los datos de las celdas para una mejor presentación de los mismos.&lt;br /&gt;Otra característica es la posibilidad de visualizar los datos numéricos de la hoja mediante distintos tipos de objetos gráficos, que permiten un análisis global y más rápido de los datos. Al igual que las fórmulas, los gráficos también se actualizan automáticamente cuando se cambia el contenido de alguna de las celdas que contienen los datos representados.&lt;br /&gt;Más allá de las habituales operaciones aritméticas, el programa proporciona una biblioteca de funciones predefinidas de todo tipo (matemáticas, financieras, estadísticas, lógicas, de cadena de texto...) que se pueden utilizar en las fórmulas que se introduzcan.&lt;br /&gt;Existen algunas prestaciones más avanzadas como la creación y gestión de base de datos, análisis de datos para obtener un determinado resultado en una fórmula, y elaboración de tablas para reflejar varios casos posibles en una fórmula que depende de varios datos.&lt;br /&gt;El programa ofrece un tipo especial de datos para introducir fechas y horas, lo cual nos permite realizar cálculos con ellos, como por ejemplo hallar el tiempo transcurrido entre dos instantes temporales dados mediante una fecha y una hora.&lt;br /&gt;Para la realización de tareas generales como creación de una factura o elaboración de un informe de gastos o contabilidad, la aplicación proporciona una serie de plantillas, que no son más que un documento de hojas de cálculo preparado con antelación que contiene la estructura, el formato y las fórmulas básicas para realizar una tarea. Asimismo el usuario puede crear sus propias plantillas personalizadas para la realización de tareas específicas que vayan a ser realizadas varias veces en el futuro.&lt;br /&gt;Como toda aplicación informática que elabora documentos, los gestores de hojas de cálculo permiten la impresión de sus archivos desde su ventana de aplicación, incluyendo los dibujos y gráficos que contengan. No obstante cualquier objeto de una hoja de cálculo se puede incrustar en un documento de un procesador de texto , con lo que se puede lograr escritos de presentación muy profesional, en la que se combinen párrafos de texto, tablas de datos y cálculos complejos, gráficos y dibujos.&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema7"&gt;1.7 Programas de hojas de cálculo&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;font color="blue"&gt;&lt;br /&gt;&lt;ul TYPE="disc"&gt;&lt;br /&gt;&lt;li&gt;Calc, integrada en OpenOffice.org&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Microsoft Excel, integrada en Microsoft Office&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Gnumeric, integrada en Gnome Office&lt;/li&gt;&lt;br /&gt;&lt;li&gt;KSpread, de KOffice&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Numbers, integrada en iWork de Apple&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Lotus&lt;/li&gt; &lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema8"&gt;1.8 Definición de una base de datos&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Una base de datos es un conjunto de datos que pertenecen al mismo contexto almacenados sistemáticamente&lt;br /&gt;para su posterior uso. En este sentido, una biblioteca puede considerarse una base de datos compuesta en su&lt;br /&gt;mayoría por documentos y textos impresos en papel e indexados para su consulta. En la actualidad, y debido al desarrollo tecnológico de campos como la informática y la electrónica, la mayoría de las bases de datos tienen formato electrónico, que ofrece un amplio rango de soluciones al problema de almacenar datos.&lt;/p&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema9"&gt;1.9 Características de las bases de datos&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;font color="blue"&gt;&lt;br /&gt;&lt;ul TYPE="disc"&gt;&lt;br /&gt;&lt;li&gt;Globalización de la información: permite a los diferentes usuarios considerar la información como un recurso corporativo que carece de dueños específicos.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Eliminación de información inconsistente: si existen dos o más archivos con la misma información, los cambios que se hagan a éstos deberán hacerse a todas las copias del archivo de facturas.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Permite compartir información.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Permite mantener la integridad en la información: la integridad de la información es una de sus cualidades altamente deseable y tiene por objetivo que sólo se almacena la información correcta.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Independencia de datos: el concepto de independencia de datos es quizás el que más ha ayudado a la rápida proliferación del desarrollo de Sistemas de Bases de Datos. La independencia de datos implica un divorcio entre programas y datos.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;a name="tema10"&gt;1.10 Aplicaciones de bases de datos&lt;/a&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;Las bases de datos se usan ampliamente. Algunas de sus aplicaciones representativas son:&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;font color="blue"&gt;&lt;br /&gt;&lt;ul TYPE="disc"&gt;&lt;br /&gt;&lt;li&gt;Banca: para información de los clientes, cuentas, préstamos y transacciones bancarias.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Líneas aéreas: para reservas e información de horarios. Las líneas aéreas fueron de las primeras en usar las bases de datos de forma distribuida geográficamente.&lt;br /&gt;&lt;li&gt;Universidades: para información de los estudiantes, matrículas en las asignaturas y cursos.&lt;br /&gt;&lt;li&gt;Transacciones de tarjetas de crédito: para compras con tarjeta de crédito y la generación de los extractos mensuales.&lt;br /&gt;&lt;li&gt;Telecomunicaciones: para guardar un registro de las llamadas realizadas, generar las facturas mensuales, mantener el saldo en las tarjetas telefónicas de prepago y para almacenar información sobre las redes de comunicaciones.&lt;br /&gt;&lt;li&gt;Finanzas: Para almacenar información sobre compañías tenedoras, ventas y compras de productos financieros, como acciones y bonos; también para almacenar datos del mercado en tiempo real para permitir a los clientes la compraventa en línea y a la compañía la compraventa automática.&lt;br /&gt;&lt;li&gt;Ventas: para información de clientes, productos y compras.&lt;br /&gt;&lt;li&gt;Comercio en línea: para los datos de ventas ya mencionados y para el seguimiento de los pedidos Web, generación de las listas de recomendaciones y mantenimiento de evaluaciones de productos en línea.&lt;br /&gt;&lt;li&gt;Producción: Para la gestión de la cadena de proveedores y para el seguimiento de la produccción de artículos en las factorías, inventarios en los almacenes y pedidos.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Recursos humanos: para información sobre los empleados, salarios, impuestos sobre sueldos y prestaciones sociales, y para la generación de nóminas.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;h2&gt;&lt;font color="red"&gt;1.11 Programas manejadores de bases de datos&lt;/font&gt;&lt;/h2&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;font color="blue"&gt;&lt;br /&gt;&lt;ul TYPE="disc"&gt;&lt;br /&gt;&lt;li&gt;SQL&lt;/li&gt;&lt;br /&gt;&lt;li&gt;INFORMIX&lt;/li&gt;&lt;br /&gt;&lt;li&gt;ORACLE&lt;/li&gt;&lt;br /&gt;&lt;li&gt;ACCESS&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/font&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;a href="#indice"&gt;Regresar&lt;/a&gt;&lt;br /&gt;&lt;/body&gt;&lt;br /&gt;&lt;/html&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-1689185308251661999?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1689185308251661999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1689185308251661999'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2008/01/base-de-datos-ii.html' title='BASE DE DATOS II.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-8795261068294512958</id><published>2007-10-24T22:09:00.000-05:00</published><updated>2007-10-24T22:10:06.194-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ING. EN SISTEMAS COMPUTACIONALES'/><title type='text'>COMANDOS BASICOS DE LINUX.</title><content type='html'>Comandos Básicos GNU/Linux &lt;br /&gt;________________________________________&lt;br /&gt;Aqui les dejo un resumen de una lista de comandos basicos para los q recien empiezan:&lt;br /&gt;&lt;br /&gt;Comandos para el manejo de archivos:&lt;br /&gt;&lt;br /&gt;cd = cambia el directorio&lt;br /&gt;compress = comprime archivos en formato .Z&lt;br /&gt;cp = copia un archivo&lt;br /&gt;chmod = cambia los permisos de un archivo o directorio&lt;br /&gt;chown = cambia el propietario del archivo o directorio&lt;br /&gt;df = muestra el espacio libre en dicso&lt;br /&gt;du = muestra el espacio en disco utilizado&lt;br /&gt;fdformat = formatea un diskete&lt;br /&gt;fdisk = pariciona unidades&lt;br /&gt;file = determina el tipo de archivo a traves del analisis parcial de su contenido&lt;br /&gt;find = encuentra un archivo&lt;br /&gt;fsck = chequea el sistema de archivos&lt;br /&gt;gzip = descomprime un archivo en formato GZip&lt;br /&gt;ln = crea un enlace simbolico o fisico depende la opcion&lt;br /&gt;ls = sirve para listar el contenido de un directorio&lt;br /&gt;mkdir = crea un directorio&lt;br /&gt;mkfs = cra un nuevo sistema de archivos&lt;br /&gt;mkswap = crea un espacio de intercambio&lt;br /&gt;more = exhibe el contenido de un archivo&lt;br /&gt;mount = monta una unidad o particion en el sistema de archivos&lt;br /&gt;mv = mueve un archivo y se utiliza para renombrar&lt;br /&gt;pwd = devuelve la cadena correspondiente al directorio actual&lt;br /&gt;rm = borra un archivo&lt;br /&gt;rmdir = borra un directorio&lt;br /&gt;swapon = activa el espacio de intercambio&lt;br /&gt;swapoff = desactiva el espacio de intercambio&lt;br /&gt;tar = empaqueta o desempaqueta un archivo en formato .tar&lt;br /&gt;type = muestra la ubicacion de un archivo senialando su "path"&lt;br /&gt;umount = desmonta una unidad montada&lt;br /&gt;&lt;br /&gt;Comandos para el manejo de procesos:&lt;br /&gt;&lt;br /&gt;free = muestra la memoria libre y utilizada&lt;br /&gt;halt = apaga la maquina&lt;br /&gt;kill = mata un proceso senialando el numero de este&lt;br /&gt;ldd = muestra las librerias necesarias para ejecutar un proceso&lt;br /&gt;ps = muestra todos los procesos q se estan ejecutando en el sistema&lt;br /&gt;pstree = lo mimo q ps pero en forma de arbol&lt;br /&gt;reboot = reinicia el sistema&lt;br /&gt;shutdown = cierra el sistema&lt;br /&gt;top = monitorea procesos y el estado del sistema&lt;br /&gt;uname = muestra informacion del sistema&lt;br /&gt;&lt;br /&gt;Comandos para el manejo de usuarios:&lt;br /&gt;&lt;br /&gt;adduser = crea una cuenta de usuario&lt;br /&gt;chsh = cambia la shell de un usuario&lt;br /&gt;groups = muesra el listado de grupos de usuarios del sistema&lt;br /&gt;id = muestra la informacion de usuario y grupo de un determinado usuario&lt;br /&gt;logout = para salir del sistema y permitir el ingreso a otro usuario&lt;br /&gt;passwd = cambia el password de un determinado usuario&lt;br /&gt;su = le da privilegios de root a un usuario&lt;br /&gt;talk = permite chatear con otros usuarios&lt;br /&gt;users = lista los usuarios conectados al sistema&lt;br /&gt;who = muestra informacion de los usuarios conectados al sistema&lt;br /&gt;whoami = muestra informacion nuestra&lt;br /&gt;&lt;br /&gt;Otros comandos:&lt;br /&gt;&lt;br /&gt;cal = muestra el calendario&lt;br /&gt;date = muestra el dia y la hora&lt;br /&gt;ddate = como el anterior pero de forma rara HuhHuh&lt;br /&gt;info = muestra la ayuda de un comando&lt;br /&gt;man = muestra las paginas del manual de un comando&lt;br /&gt;startx = para iniciar XWindow&lt;br /&gt;&lt;br /&gt;Comandos Debian&lt;br /&gt;&lt;br /&gt;apt-get update = updatea la base de datos de los paquetes .deb&lt;br /&gt;apt-get upgrade = actualiza los paquetes a su ultima version&lt;br /&gt;apt-get install "paquete" = instala lo que escribiras en "paquete"&lt;br /&gt;apt-get remove "paquete" = desinstala lo que escribiras en "paquete"&lt;br /&gt;apt-get check = actualiza la cache de paquetes&lt;br /&gt;apt-get clean = borra los paquetes .deb descargados&lt;br /&gt;apt-get dist-upgrade = hace un upgrade del SO&lt;br /&gt;apt-get source "paquete" = descarga fuentes del "paquete"&lt;br /&gt;apt-cache showpkg "paquete" = muestra todas las versiones disponibles de "paquete"&lt;br /&gt;modconf = pequeño programa para sacar o poner modulos del kernel&lt;br /&gt;update-rc.d "opcion" "programa o script" "opcion" = Remueve o Agrega el script o programa a los niveles de corrida que se le asigne&lt;br /&gt;&lt;br /&gt;Comandos Red Hat&lt;br /&gt;&lt;br /&gt;rpm -q "programa" = para saber si "programa" esta instalado&lt;br /&gt;rpm -qs "programa" = estado de todos los archivos de "programa"&lt;br /&gt;rpm -qd "programa" = documentacion de "programa" instalada&lt;br /&gt;rpm -qc "programa" = archivos de configuracion de "programa"&lt;br /&gt;rpm -qa "programa" = muestra todos los rpm de "programa"&lt;br /&gt;rpm -qa | grep "programa" = busca el nombre de paquete del "programa"&lt;br /&gt;rpm -i "programa" = instala "programa"&lt;br /&gt;rpm -u "programa" = actualiza "programa"&lt;br /&gt;rpm -e "programa" = elimina "programa"&lt;br /&gt;rpm -ivh "programa" = instala el "programa" en pasos y muestra el progreso de la instalacion&lt;br /&gt;&lt;br /&gt;Comandos de red&lt;br /&gt;&lt;br /&gt;ping = el tan famoso ping que manda paquetes esperando una respuesta&lt;br /&gt;ifconfig = para ver las placas de red&lt;br /&gt;netstat = testeo de red&lt;br /&gt;host "destino" = muestra ip de "destino"&lt;br /&gt;nmap "ip de destino" = pequeño programa para analizar ip´s o rangos de ellas&lt;br /&gt;&lt;br /&gt;Comandos para el manejo de paquetes&lt;br /&gt;&lt;br /&gt;rpm - "opcion" "paquete" = instala o desinstala el "paquete" depende la opcion&lt;br /&gt;dpkg - "opcion" "paquete" = instala o desinstala el "paquete" depende la opcion (solo debian)&lt;br /&gt;tar - "opcion" "paquete" = comprime o descomprime el "paquete" de formato tar.gz .tgz o tar.bz2&lt;br /&gt;&lt;br /&gt;------------------------------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Espero q lo disfruten y q se aventuren a este mundo tan apacionante q es Linux y si no saben como usar un comando usen el comando 'man' y a continuacion el comando del q necesiten ayuda&lt;br /&gt;SALUDOS&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-8795261068294512958?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8795261068294512958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8795261068294512958'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/comandos-basicos-de-linux.html' title='COMANDOS BASICOS DE LINUX.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-3827932661537634436</id><published>2007-10-24T21:49:00.001-05:00</published><updated>2007-10-24T22:07:05.546-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ING. EN SISTEMAS COMPUTACIONALES'/><title type='text'>COMANDOS DE LINUX.</title><content type='html'>&lt;center&gt;&lt;span style="font-weight:bold;"&gt;UNIVERSIDAD SALAZAR&lt;br /&gt;PROGRAMACION DE SISTEMAS &lt;br /&gt;TUTORIAL LINUX&lt;/span&gt;&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;INDICE&lt;br /&gt;&lt;br /&gt;1. EL PROMPT DE LINUX 2 &lt;br /&gt;2. BORRAR CARACTERES, PALABRAS,TODO 2&lt;br /&gt;3. CLEAR 2&lt;br /&gt;4. EXIT 3&lt;br /&gt;5. WHO 3&lt;br /&gt;6. DATE 5&lt;br /&gt;7. ECHO 7&lt;br /&gt;8. BANNER 7&lt;br /&gt;9. CAL  8&lt;br /&gt;10. LS 10&lt;br /&gt;11. UNAME 11&lt;br /&gt;12. SCRIPT 12&lt;br /&gt;13. PWD 14&lt;br /&gt;14. CD 14&lt;br /&gt;15. MKDIR 15&lt;br /&gt;16. CHMOD 15&lt;br /&gt;17. METACARACTERES &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;1.EL PROMPT DE LINUX&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$&lt;br /&gt;&lt;br /&gt;El prompt de linux se divide en dos partes separadas por la @. La primera parte que esta antes de la @ corresponde al nombre de usuario con el que estamos trabajando, la segunda parte que esta después de la @ corresponde al nombre del equipo donde estamos trabajando.&lt;br /&gt;&lt;br /&gt;Despues del nombre del equipo vienen los dos puntos (:) seguidos de la ruta donde nos encontramos:&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~/Desktop$ &lt;br /&gt;&lt;br /&gt;Para este ejemplo nos encontramos en el directorio Desktop. Y finalmente el prompt termina con el signo de dolar ($).&lt;br /&gt;&lt;br /&gt;El algunas distribuciones el prompt por defecto es el signo de dolar ($).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;2.Borrar caracteres, palabras y todo. Desde la línea de comandos.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;BackSpace:  Elimina el último carácter tecleado.&lt;br /&gt;ctrl+w  Elimina la última palabra.&lt;br /&gt;ctrl+u  Elimina toda la línea de ordenes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;3.clear&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Limpia pantalla.&lt;br /&gt;&lt;br /&gt;Modo de empleo: clear.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;4.exit&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Termina una sesión de trabajo en modo consola ó finaliza un script.&lt;br /&gt;&lt;br /&gt;Modo de empleo: exit.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cuando deseamos finalizar una sesión de trabajo, deberemos informar de ello al sistema. La orden exit se emplea para avisar al sistema de nuestro fin de sesión. Cuando ejecutamos esta orden, Linux libera el terminal que estamos utilizando para que pueda conectatse otro usuario. Es aconsejable desconectarse del sistema siempre que nos alejemos del terminal. De esta manera, evitaremos que cualquier otro curioso pueda aprovechar esta circunstancia para acceder a nuestros archivos como si fuese el propietario. Si ocurriera eso, el sistema entendería que el usuario sigue conectado, y el intruso tendría plenos derechos para visualizar nuestros archivos, hacer copias, modificarlos y en el peor de los casos, hasta borrarlos.&lt;br /&gt;&lt;br /&gt;Otra forma de cerrar la sesión es pulsando la combinación de teclas ctrl+d.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;5.who&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Modo de empleo: who [OPCIÓN]... [ FICHERO | ARG1 ARG2 ] &lt;br /&gt;&lt;br /&gt;-a,--all usa todos los parametros&lt;br /&gt; &lt;br /&gt; christian@christian-laptop:~$ who -a &lt;br /&gt;           system boot  2007-10-16 11:54 &lt;br /&gt; LOGIN      tty4         2007-10-16 11:54              4312 id=4 &lt;br /&gt; LOGIN      tty5         2007-10-16 11:54              4313 id=5 &lt;br /&gt; LOGIN      tty2         2007-10-16 11:54              4316 id=2 &lt;br /&gt; LOGIN      tty3         2007-10-16 11:54              4317 id=3 &lt;br /&gt; LOGIN      tty1         2007-10-16 11:54              4318 id=1 &lt;br /&gt; LOGIN      tty6         2007-10-16 11:54              4319 id=6 &lt;br /&gt;           `run-level' 2 2007-10-16 11:54                   último= &lt;br /&gt; christian ? :0           2007-10-16 11:56   ?          5498 &lt;br /&gt; christian + pts/0        2007-10-16 12:09   .          6563 (:0.0) &lt;br /&gt; &lt;br /&gt;-b, --boot tiempo del último inicio del sistema &lt;br /&gt;&lt;br /&gt; christian@christian-laptop:~$ who -b &lt;br /&gt;         system boot  2007-10-16 11:54 &lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-H,--heading  muestra la línea de encabezados de columnas&lt;br /&gt; &lt;br /&gt; christian@christian-laptop:~$ who -H &lt;br /&gt; NOMBRE   LÍNEA       TIEMPO           COMENTARIO &lt;br /&gt; christian :0           2007-10-16 11:56 &lt;br /&gt; christian pts/0        2007-10-16 12:09 (:0.0) &lt;br /&gt;                          &lt;br /&gt;-l,--login imprimir los procesos de inicio de sesión del sistema &lt;br /&gt;&lt;br /&gt; christian@christian-laptop:~$ who -l &lt;br /&gt; LOGIN    tty4         2007-10-16 11:54              4312 id=4 &lt;br /&gt; LOGIN    tty5         2007-10-16 11:54              4313 id=5 &lt;br /&gt; LOGIN    tty2         2007-10-16 11:54              4316 id=2 &lt;br /&gt; LOGIN    tty3         2007-10-16 11:54              4317 id=3 &lt;br /&gt; LOGIN    tty1         2007-10-16 11:54              4318 id=1 &lt;br /&gt; LOGIN    tty6         2007-10-16 11:54              4319 id=6 &lt;br /&gt;&lt;br /&gt;-q,--count todos los nombres de entrada y número de usuarios conectados &lt;br /&gt;&lt;br /&gt; christian@christian-laptop:~$ who -q &lt;br /&gt; christian christian &lt;br /&gt; # usuarios=2 &lt;br /&gt; &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; -u, --users       muestra los usuarios conectados &lt;br /&gt; &lt;br /&gt; christian@christian-laptop:~$ who -u &lt;br /&gt; christian :0           2007-10-16 11:56   ?          5498 &lt;br /&gt; christian pts/0        2007-10-16 12:09   .          6563 (:0.0) &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;La orden who nos informa acerca de quién o quiénes están conectados actualmente al sistema. También muestra información en la segunda columna, relativa al terminal asociado a cada usuario, y por último, en la columna tercera la hora y la fecha en la que el usuario inicio sesión.&lt;br /&gt; &lt;br /&gt; Si la orden who se ejecuta con el parametro am i visualizará por  pantalla su nombre de conexión (login), su terminal asociado (al que  está conectado) y la fecha y hora de inicio de sesión. Esta opción es  útil en el caso de que hayamos modificado previamente nuestra  identidad varias veces y queramos saber quienes somos en cada  instante.&lt;br /&gt;&lt;br /&gt; christian@christian-laptop:~$ who am i &lt;br /&gt; christian pts/0        2007-10-16 12:09 (:0.0) &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;6.date&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Modo de empleo: date&lt;br /&gt;&lt;br /&gt;Informa sobre la fecha y hora actuales. &lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ date &lt;br /&gt;mar oct 16 12:20:56 CDT 2007 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;date +'Son las %r del %d de %h de %y'&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ date +'Son las %r del %d de %h de %y' &lt;br /&gt;Son las 12:21:41  del 16 de oct de 07 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;operadores asociados:&lt;br /&gt;&lt;br /&gt;%r HORA FORMATO AM-PM&lt;br /&gt;%d DIA DEL MES&lt;br /&gt;%m  MES&lt;br /&gt;%h MES EN LETRAS ABREVIADO ENE, FEB, ...&lt;br /&gt;%y AÑO&lt;br /&gt;%w DIA DE LA SEMANA&lt;br /&gt;%H HORA&lt;br /&gt;%M MINUTO&lt;br /&gt;%S SEGUNDO&lt;br /&gt;&lt;br /&gt;-s set, establece hora y fecha dependiendo de la cadena que se le proporcione como argumento. (Sólo para root).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;date -s 23:59&lt;br /&gt;&lt;br /&gt;1.christian@christian-laptop:~$ date &lt;br /&gt;mar oct 16 12:23:01 CDT 2007 &lt;br /&gt;2.christian@christian-laptop:~$ su &lt;br /&gt;Password: &lt;br /&gt;3.root@christian-laptop:/home/christian# date -s 13:23 &lt;br /&gt;mar oct 16 13:23:00 CDT 2007 &lt;br /&gt;4.root@christian-laptop:/home/christian# date &lt;br /&gt;mar oct 16 13:23:05 CDT 2007 &lt;br /&gt;&lt;br /&gt;Explicación para cambiar la hora del sistema:&lt;br /&gt;En el paso 1. ejecute el comando date para saber la fecha y hora actuales. En el paso 2. me cambie de usuario al usuario root, porque la tarea de cambiar la hora del sistema requiere de privilegios de administrador. en el paso 3. con el mismo comando date más la opción d&lt;br /&gt;-s (de set) cambiamos la hora del sistema pasandole como argumento la nueva hora en formato de 24:00 hrs. Finalmente en el paso 4. vuelvo a ejecutar el comando date para corroborar que se ha actualizado la hora.&lt;br /&gt;&lt;br /&gt;date -s aammdd&lt;br /&gt;&lt;br /&gt;La operación para cambiar la fecha del sistema es similar a la del cambio de hora, de la misma forma que el anterior el cambio de fecha del sistema es una tarea administrativa, por lo tanto lo deberemos de realizar con el usuario root. En el paso 1. verifico como el comando date que fecha tiene actualmente el sistema, posteriormente en el paso 2. cambio la fecha del sistema utilizando el mismo comando date, pero con el parametro -s de set y pasandole como argumento la nueva fecha en el formato de 6 digitos aammdd (año, mes, dia). Finalmente en el paso 3. vuelvo a ejecutar el comando date para corroborar que la fecha ha sido modificada satisfactoriamente&lt;br /&gt;&lt;br /&gt;1.root@christian-laptop:/home/christian# date &lt;br /&gt;mar oct 16 13:04:04 CDT 2007 &lt;br /&gt;2.root@christian-laptop:/home/christian# date -s 071212 &lt;br /&gt;mié dic 12 00:00:00 CST 2007 &lt;br /&gt;3.root@christian-laptop:/home/christian# date &lt;br /&gt;mié dic 12 00:00:19 CST 2007 &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;7.echo&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;modo de empleo: echo cadena de caracteres&lt;br /&gt;&lt;br /&gt;Repite todo lo que le pasemos como parámetro.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# echo hola &lt;br /&gt;hola &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;8.banner&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;modo de empleo: banner cadena de caracteres&lt;br /&gt;&lt;br /&gt;Se utiliza para ver en letras grandes todo lo que le pasemos como argumento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;9.cal&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;modo de empleo: cal [mes] [año]&lt;br /&gt;&lt;br /&gt;Sin ningún parámetro, cal visualiza el calendario correspondiente al mes actual(1.). Si le pasamos como parámetro un año (2.), mostrará el calendario correspondiente al año en cuestión. También podemos indicarle que nos informe sobre un mes en particular del año deseado (3.), pasandole como primer parámetro el número del mes y como segundo parámetro el año.&lt;br /&gt;&lt;br /&gt;1. root@christian-laptop:/home/christian# cal &lt;br /&gt;    octubre 2007    &lt;br /&gt;lu ma mi ju vi sá do &lt;br /&gt; 1  2  3  4  5  6  7 &lt;br /&gt; 8  9 10 11 12 13 14 &lt;br /&gt;15 16 17 18 19 20 21 &lt;br /&gt;22 23 24 25 26 27 28 &lt;br /&gt;29 30 31            &lt;br /&gt;&lt;br /&gt;    &lt;br /&gt;2.&lt;br /&gt;3. root@christian-laptop:/home/christian# cal 02 2008 &lt;br /&gt;    febrero 2008    &lt;br /&gt;lu ma mi ju vi sá do &lt;br /&gt;             1  2  3 &lt;br /&gt; 4  5  6  7  8  9 10 &lt;br /&gt;11 12 13 14 15 16 17 &lt;br /&gt;18 19 20 21 22 23 24 &lt;br /&gt;25 26 27 28 29      &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;10.ls&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Modo de empleo: ls [OPCIÓN]... [FICHERO]... &lt;br /&gt;Muestra información acerca de los ARCHIVOS (del directorio actual por defecto). &lt;br /&gt;&lt;br /&gt;Ordena las entradas alfabéticamente si no se especifica ninguna otra opción.&lt;br /&gt;&lt;br /&gt;-a,--all no ignorar entradas que comiencen con . &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ls -a&lt;br /&gt;&lt;br /&gt;Te mostrar todos los archivos incluso los ocultos, en Linux los archivos ocultos son los que su nombre empieza por un punto (.).&lt;br /&gt;&lt;br /&gt;-l utiliza un formato de listado largo &lt;br /&gt;&lt;br /&gt;Este parametro nos muestra el formato de listado largo como son los permisos del archivo, el propietario, el grupo al que pertenece, su tamaño en bytes, fecha y hora de su ultima modificación.&lt;br /&gt;&lt;br /&gt;-d,--directory muestra las entradas de los directorios en lugar de sus contenidos, y no sigue los enlaces simbólicos.&lt;br /&gt;&lt;br /&gt;Este parametro combinado con -l (ls -ld) nos muestra los permisos de la carpeta en particular y no de su contenido.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-h,--human-readable muestra los tamaños de forma legible &lt;br /&gt;&lt;br /&gt;Únicamente cambia el tamaño en bytes por sus equivalentes en unidades mas grandes, y muestra su abreviatura, Kilobytes K, Megabytes M, etc.&lt;br /&gt;&lt;br /&gt;-R Lista directorios recursivamente, es decir, muestra el    contenido de los directorios&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;11.uname.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;modo de empleo: uname [-parametros]&lt;br /&gt;&lt;br /&gt;La orden uname se utiliza para tener información acerca de nuestro sistema Linux. Con ella podemos saber el tipo de máquina que estamos utilizando, la versión del sistema operativo, el tipo de procesador, etc. Los parametros más comunes para este comando se muestran a continuación:&lt;br /&gt;&lt;br /&gt;uname sin parametros muestra el nombre del sistema operativo&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# uname &lt;br /&gt;Linux &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-m Tipo de hardware utilizado (Familia del microprocesador).&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# uname -m &lt;br /&gt;i686 &lt;br /&gt;&lt;br /&gt;-n Nombre de la terminal.&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# uname -n &lt;br /&gt;christian-laptop &lt;br /&gt;&lt;br /&gt;-r Actualización del sistema operativo (versión del kernel).&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# uname -r &lt;br /&gt;2.6.20-15-generic &lt;br /&gt;&lt;br /&gt;-s Nombre del sistema.&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# uname -s &lt;br /&gt;Linux &lt;br /&gt;&lt;br /&gt;-v versión del sistema.&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# uname -v &lt;br /&gt;#2 SMP Sun Apr 15 07:36:31 UTC 2007 &lt;br /&gt;&lt;br /&gt;-a muestra toda la información acerca de la PC que estamos  utilizando (all).&lt;br /&gt;&lt;br /&gt;root@christian-laptop:/home/christian# uname -a &lt;br /&gt;&lt;br /&gt;Linux christian-laptop 2.6.20-15-generic #2 SMP Sun Apr 15 07:36:31 UTC 2007 i686 GNU/Linux &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;12.script&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;modo de empleo: script [-a] [archivo]&lt;br /&gt;&lt;br /&gt;Esta orden se utiliza para almacenar en un archivo todo lo que el usuario teclee a partir del momento en que sea invocada así como todo lo que es enviado a la pantalla. Para dejar de guardar información en el archivo, tenemos que invocar la orden exit. &lt;br /&gt;&lt;br /&gt;1. christian@christian-laptop:~$ script 19octubre &lt;br /&gt;Script iniciado; el fichero es 19octubre &lt;br /&gt;&lt;br /&gt;2. christian@christian-laptop:~$ ls &lt;br /&gt;19octubre                     mifetchmail &lt;br /&gt;460px-Disco_duro_abierto.jpg  mifetchmail~ &lt;br /&gt;archivodetexto                practicafinaltablas.html~ &lt;br /&gt;comandos.doc                  preguntas linux facil.odt &lt;br /&gt;Desktop                       Programación de interfaces &lt;br /&gt;ejercicios.odt                Programación de sistemas &lt;br /&gt;EXAMEN (copia).odt            simulacro examen.odt &lt;br /&gt;examen.odt                    sistemas de archivos y particiones.odt &lt;br /&gt;&lt;br /&gt;3. christian@christian-laptop:~$ cd vmware/ &lt;br /&gt;4. christian@christian-laptop:~/vmware$ cd .. &lt;br /&gt;5. christian@christian-laptop:~$ exit &lt;br /&gt;exit &lt;br /&gt;Script terminado; el fichero es 19octubre &lt;br /&gt;&lt;br /&gt;En el paso 1. inicie un script llamado 19octubre, en el cual se irán almacenando los comandos que vayamos utilizando desde ese momento asi como tambien de los resultados que nos arrojen dichos comandos. En el paso 2. se hizo un listado de archivos y directorios, posteriormente se procedio a entrar al directorio vmware en el paso 3. y en el paso 4. se salio de ese directorio, finalmente en el paso 5. termine el script con la orden exit. Todos los comandos que utilice y sus resultados (pasos 2., 3. y 4.) se guardaron en un archivo de texto que es el que se creo cuando iniciamos el script (19otubre).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Finalmente mostraremos el contenido de dicho archivo con el comando cat:&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ cat 19octubre &lt;br /&gt;Script iniciado (vie 19 oct 2007 16:13:37 CDT &lt;br /&gt;)christian@christian-laptop:~$ ls &lt;br /&gt;19octubre                     mifetchmail &lt;br /&gt;460px-Disco_duro_abierto.jpg  mifetchmail~ &lt;br /&gt;archivodetexto                practicafinaltablas.html~ &lt;br /&gt;comandos.doc                  preguntas linux facil.odt &lt;br /&gt;Desktop                       Programación de interfaces &lt;br /&gt;ejercicios.odt                Programación de sistemas &lt;br /&gt;EXAMEN (copia).odt            simulacro examen.odt &lt;br /&gt;examen.odt                    sistemas de archivos y particiones.odt &lt;br /&gt;christian@christian-laptop:~$ cd vmware/ &lt;br /&gt;christian@christian-laptop:~/vmware$ cd .. &lt;br /&gt;christian@christian-laptop:~$ exit &lt;br /&gt;exit &lt;br /&gt;&lt;br /&gt;Script terminado (vie 19 oct 2007 16:14:02 CDT &lt;br /&gt;&lt;br /&gt;Y con esto podemos constatar que se ha guardado en un script todo lo que hicimos desde el momento de iniciar el script, hasta el momento en que lo finalizamos con el comando exit.&lt;br /&gt;&lt;br /&gt;-a  Agrega un script nuevo a un archivo de script existente&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;con el parametro -a podremos iniciar nuevamente un script anterior, para anexarle más cosas. compartandose de la misma forma, cuando queramos dejar de agregar comandos al script bastará con nuevamene ejecutar exit.&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ script -a 19octubre &lt;br /&gt;&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;mas comandos&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;.&lt;br /&gt;christian@christian-laptop:~$ exit &lt;br /&gt;exit &lt;br /&gt;&lt;br /&gt;Script terminado (vie 19 oct 2007 16:27:02 CDT &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;13. pwd&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;modo de empleo: pwd&lt;br /&gt;&lt;br /&gt;Esta orden muestra nuestro directorio de trabajo actual, tal y como se indican sus iniciales (print working directory), en forma de ruta absoluta.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;14.cd&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;sintaxis cd [directorio]&lt;br /&gt;&lt;br /&gt;La orden cd (change directory) se usa para movernos entre directorios. La ruta que le pasemos como argumento cd, puede ser absoluta o relativa. Si a cd no le pasamos ninguna ruta, nos localizará en nuestro directorio de arranque también conocido como directorio HOME. Al directorio anterior se le conoce como directorio de arranque porque cuando iniciamos sesión se nos sitúa automaticamente ahí.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;15.-mkdir&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Modo de empleo: mkdir [OPCIÓN] DIRECTORIO... &lt;br /&gt;&lt;br /&gt;Este comando crea directorios, en el caso de que no existan previamente.&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;-m, --mode=MODE establece los permisos (como en chmod), en lugar                        de  rwxrwxrwx – umask &lt;br /&gt;&lt;br /&gt;-p, --parents  no hay error si existen, crea los directorios      padres en caso necesario &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;-v, --verbose  muestra un mensaje por cada directorio creado .      &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;16.chmod&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Modo de empleo: chmod [OPCIÓN]... MODO[,MODO]... FICHERO... &lt;br /&gt;       o bien:  chmod [OPCIÓN]... MODO-OCTAL FICHERO... &lt;br /&gt;       o bien:  chmod [OPCIÓN]... --reference=FICHERO-R FICHERO... &lt;br /&gt;&lt;br /&gt;Cambia el modo de cada FICHERO a MODO. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;17. metacaracteres&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Caracteres Especiales (Metacaracteres)&lt;br /&gt;&lt;br /&gt;El sistema operativo permite usar caracteres especiales que especifiquen una secuencia de nombres que contengan patrones comunes.&lt;br /&gt;&lt;br /&gt;Caracteres&lt;br /&gt;Tipo de Búsqueda&lt;br /&gt;&lt;br /&gt;*&lt;br /&gt;Cero o más caracteres&lt;br /&gt;&lt;br /&gt;[]&lt;br /&gt;Cualquier caracter que esté dentro&lt;br /&gt;&lt;br /&gt;?&lt;br /&gt;Cualquier simple carácter&lt;br /&gt;&lt;br /&gt;El asterisco (*) puede ser usado en cualquier parte del nombre de un archivo y puede ocurrir en varios tiempos. Una asterisco busca un juego de caracteres que represente cero o más caracteres en todos los archivos que no contengan /.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;El signo de interrogación (?) busca un solo patrón o caracter que se encuentre en su posición, y su funcionamiento es idéntico al del asterisco.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;18.touch&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;$ touch nom-arch1 nom-arch2 ....&lt;br /&gt;&lt;br /&gt;Crea un archivo vacío, es decir, sin contenido o información. Cuando se trata de un archivo ya existente con o sin información, no la altera, sino solo altera el tiempo de modificación.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;19.cp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Comando para copiar archivos y directorios.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;$ cp [-ipr] archivo1 archivo2&lt;br /&gt;&lt;br /&gt;atributos:&lt;br /&gt;&lt;br /&gt;-p Preserva el tiempo de modificación y los permisos que tiene el archivo original.&lt;br /&gt;&lt;br /&gt;-r Copia directorios, incluyendo los subdirectorios y otros archivos que se encuentran contenidos en el directorio especificado.&lt;br /&gt;&lt;br /&gt;-i Modo interactivo. Pregunta si hace una sobreescritura de la información, en caso de que ya exista el archivo o archivos en el lugar de destino.&lt;br /&gt;&lt;br /&gt;archivo1 Nombre del archivo fuente.&lt;br /&gt;&lt;br /&gt;archivo2 Nombre del archivo destino (copia).&lt;br /&gt;&lt;br /&gt;En caso de querer copiar archivos hacia un mismo directorio, la sintaxis es la siguiente:&lt;br /&gt;&lt;br /&gt;$ cp [-ipr] archivo1 archivo2 . . . archivoN directorio&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;20.mv&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este comando tiene dos funciones: una es renombrar o cambiar el nombre de un archivo o directorio sin alterar su información o contenido; y la otra es mover o trasladar uno o mas archivos hacia un directorio.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;mv [-i] archivo1 archivo2&lt;br /&gt;mv [-i] directorio1 directorio2&lt;br /&gt;&lt;br /&gt;Siendo&lt;br /&gt;&lt;br /&gt;-i : Modo interactivo. En este caso de que el segundo nombre exista, aparecerá un mensaje que preguntará si se remueve el archivo 2 o el directorio2 según sea el caso&lt;br /&gt;&lt;br /&gt;mv: overwrite archivo2 (y/n)?&lt;br /&gt;&lt;br /&gt;En caso de mover varios archivos hacia un directorio, la sintaxis es la siguiente:&lt;br /&gt;&lt;br /&gt;mv [-i] arch1 arch2 arch3 . . . archn directorio&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;21.rm&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este comando remueve o borra archivos. En caso de querer borrar un directorio se debe utilizar la opción -r o bien, borrar primero todos los archivos que se encuentren en dicho directorio y después borrar el directorio con el comando rmdir.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;rm [-i] archivo1 archivo2 ...&lt;br /&gt;rmdir [-ir] directorio1 directorio2...&lt;br /&gt;Opciones:&lt;br /&gt;-i Interactivo. Pide, archivo por archivo, una confirmación para realizar el borrado.&lt;br /&gt;-r Borra en forma recursiva, en caso de que se trate de un directorio.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;22.-tee &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este comando es un editor muy sencillo, que permite agregar algo, rescribir o editar sobre un archivo si este archivo existe, rescribe sobre la información y borra la que había anteriormente; en el caso contrario, crea un archivo.&lt;br /&gt;&lt;br /&gt;Repite la información de cada línea al momento de estarlo editando, pero al momento de desplegarlo, se lista sin aparecer dos veces. Para terminar de editar un archivo oprima las teclas &lt;ctrl.&gt;D.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;$ tee -a nom-archivo&lt;br /&gt;&lt;br /&gt;Crea un archivo aunque exista el archivo especificado solo adiciona la información editada al final de la información que ya existía en el archivo. No borra la información anterior.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;23.cat&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Comando cat este comando concatena (une) y despliéga la información de el o los archivos especificados.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;$ cat [-bevn] nom-arch1 nomb-arch2 ...&lt;br /&gt;&lt;br /&gt;Indicando:&lt;br /&gt;&lt;br /&gt;-b Enumera las líneas del archivo, omitiendo las líneas en blanco.&lt;br /&gt;-ev Despliega un carácter string ($) al final de cada línea sin omitir las líneas en blanco, poniendo el $ al principio de dichas líneas. Despliega además los caracteres no imprimibles.&lt;br /&gt;-n Enumera todas las líneas del archivo sin omitir las líneas en blanco.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;24.More &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Despliega la información de cada archivo especificando paginado de acuerdo al tamaño de la ventana, apareciendo al final.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;$more [-#_lineas][+#_lineas] nom-arch1 nomb-arch2 ...&lt;br /&gt;&lt;br /&gt;Siendo:&lt;br /&gt;&lt;br /&gt;-#_líneas  Despliega la información de acuerdo al tamaño del     bloque que se ha especificado, dicho tamaño es      especificado con el numero de líneas que se indicó. &lt;br /&gt;&lt;br /&gt;+#_línea  Nos permite indicar una línea específica que será el     comienzo para el despliegue &lt;br /&gt;&lt;br /&gt;nom_arch#  Nombre del archivo del cual se desea consultar      información.&lt;br /&gt;&lt;br /&gt;&lt;enter&gt; Avanza 1 línea. &lt;br /&gt;&lt;br /&gt;spacebar Avanza 1 página &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;25. tail&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Comando tail Despliega las 10 últimas líneas del archivo especificado.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;$ tail +/- num_lin nom-arch&lt;br /&gt;&lt;br /&gt;Siendo:&lt;br /&gt;+ num_lin Despliega a partir del número de línea indicado( del inicio del archivo) hasta el fin del archivo.&lt;br /&gt;&lt;br /&gt; num_lin Despliega las ultimas “n” líneas indicadas.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;26. head&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Despliega las primeras “n” líneas de los archivos especificados. El número de líneas que toma como default es 10.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;$ head [-n] nom-arch&lt;br /&gt;&lt;br /&gt;Opción:&lt;br /&gt;&lt;br /&gt;-n Despliega las primeras “n” líneas del archivo, especificado por el usuario. Siendo “n” el numero de líneas a desplegar.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;27. sort &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La función de este comando es clasificar un archivo teniendo la particularidad de que esta clasificación no afecta el contenido del archivo fue nte, en caso de que se desee almacenar dicha clasificación debe almacenarse en otro archivo diferente, para realizar ese almacenamiento puede usar los redireccionamientos de archivos.&lt;br /&gt;&lt;br /&gt;-n Ordena numéricamente&lt;br /&gt;-o Direcciona la salida al archivo especificado.&lt;br /&gt;-u Únicas ocurrencias, ignora duplicidad de entradas.&lt;br /&gt;-f Ignora mayúsculas y minúsculas, no toma en cuenta valores ASCII&lt;br /&gt;-r Ordena de mayor a menor.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;28. file &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Determina el tipo de archivo examinando su contenido. El tipo de archivo puede ser:&lt;br /&gt;&lt;br /&gt;Datos&lt;br /&gt;Texto en Inglés&lt;br /&gt;Directorio&lt;br /&gt;Texto ASCII&lt;br /&gt;Librería&lt;br /&gt;Shell Script Ejecutable&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;$ file [-f][-h] nom-arch&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;29.Redireccionamiento&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;En el sistema operativo, un archivo puede sustituir a la terminal ya sea para entrada y /o salida, los símbolos de los redireccionamientos son:&lt;br /&gt;&lt;br /&gt;Redirección para la salida estándar &gt;&lt;br /&gt;Redirección para la salida y añadir al final del archivo &gt;&gt;&lt;br /&gt;Redirección para la entrada estándar &lt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;El Redireccionamiento de salida estándar &gt; indica al Shell que no debe direccionar la salida a la terminal, sino al archivo indicado, si el archivo indicado no existe entonces lo crea y si ya existe dependiendo de la verdino del sistema Operativo el contenido del archivo se borra y se rescribe en él o nos envía un mensaje de advertencia y no nos permite escribir en el.&lt;br /&gt;&lt;br /&gt;cat /etc/passwd &gt; claves.txt&lt;br /&gt;&lt;br /&gt;El símbolo &gt;&gt; redirecciona la salida al final del archivo especificado sin destruir el contenido ya existente, es decir, si el archivo ya existe le añade la información al final del archivo, si no existe entonces lo crea.&lt;br /&gt;&lt;br /&gt;cat /etc/passwd &gt;&gt; claves.txt&lt;br /&gt;&lt;br /&gt;El símbolo de redirección de entrada &lt; indica al Shell que la entrada no proviene de la terminal, sino del archivo indicado.&lt;br /&gt;&lt;br /&gt;wc -l &lt; /etc/passwd&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;30.Tuberias (pipes |)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Una de las mejores innovaciones del sistema es el pipe, que es representado por una barra vertical.( | ).&lt;br /&gt;&lt;br /&gt;Esta tubería tolera que se conecte la salida de un comando a la entrada de otro, de tal manera que los dos comandos corren en una secuencia llamada línea de tuberías.&lt;br /&gt;&lt;br /&gt;Una tubería tiene el mismo efecto que si se redirecciona la salida estándar de un programa a un archivo y después se usará éste como la entrada estándar a otro programa.&lt;br /&gt;&lt;br /&gt;Ejemplo: &lt;br /&gt;&lt;br /&gt; n&lt;br /&gt;&lt;br /&gt;En el ejemplo estamos mostrando el archivos nombres pero en lugar de mostrar la salida en la salida estandar, por medio de una tuberia dicha salida la mandamos al comando sort, que ordenará el archivo y luego redireccionando la salida estandar una vez más se crea el archivo nombres.sort.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;31.find&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;La función de este comando es para encontrar un archivo especifico dentro de un directorio. &lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;$find directorio -name archivo -print&lt;br /&gt;&lt;br /&gt;Opciones &lt;br /&gt;-name archivo&lt;br /&gt;Busca el archivo especificado&lt;br /&gt;-type tipo&lt;br /&gt;Para archivos de algún tipo determinado, por ejemplo: l para ligas, d para directorios.&lt;br /&gt;-group grupo&lt;br /&gt;Realiza búsquedas de archivos que se encuentren identificados con el nombre del grupo especificado.&lt;br /&gt;-newer archivo&lt;br /&gt;Busca y despliega los archivos que han sido modificados mas recientemente, es decir, después del archivo especificado.&lt;br /&gt;- user usuario &lt;br /&gt;Busca y despliega los archivos&lt;br /&gt;-print&lt;br /&gt;Pertenecientes al usuario especificado, imprime por pantalla la salida o el resultado del comando&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;32.grep&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Global Regular Expresion and Print). Este comando es para realizar búsquedas de strings o cadenas de strings o cadenas de caracteres que se encuentran contenidas dentro de un archivo especifico. Nos entrega en pantalla, las líneas del archivo que contiene la cadena especificada.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;$ grep "string" nom-arch &lt;br /&gt;$ grep [-cinv ] nom-arch&lt;br /&gt;&lt;br /&gt;Opciones:&lt;br /&gt;&lt;br /&gt;-c Despliega el numero de líneas en que aparece el string o la  cadena de caracteres en el archivo&lt;br /&gt;&lt;br /&gt;-i No hace distinción entre mayúsculas y minúsculas.&lt;br /&gt;&lt;br /&gt;-n Precede cada una de las líneas desplegadas, con su numero de líneas correspondiente al archivo.&lt;br /&gt;&lt;br /&gt;-v Invierte la búsqueda, desplegando todas las líneas del archivo,  excepto las que contienen el string que se especifica.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;33.tty&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Comando tty (teletypewriter). Indica al usuario del sistema, que número de terminal se está utilizando. El numero de tty es un numero único asignado a cada terminal; El numero de tty es un numero único asignado a cada terminal; el archivo especial, pts/0, se encuentra localizado en /dev y contiene información para transmitir datos caracter por caracter, en este caso, a una terminal.&lt;br /&gt;&lt;br /&gt;Ejemplo: &lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ tty &lt;br /&gt;/dev/pts/0 &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;34.df&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Contabilizando el espacio en el disco.&lt;br /&gt;&lt;br /&gt;Comando df (Disk Free). Imprime por pantalla el numero de bloques libres o disponibles en el disco, así como el espacio ocupado en el por los subsistemas de archivos montados.&lt;br /&gt;&lt;br /&gt;Si utilizamos solo el comando 'df', obtenemos un listado conteniendo los puntos de montaje, las particiones, el total de bloques libres y el total de entradas para archivos.&lt;br /&gt;&lt;br /&gt;Cabe mencionar que el comando 'df' tiene diversas formas de salida, por lo que la salida en su sistema puede ser diferente.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;35.du&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Comando du (Disk Usage). Su función es desplegar el numero de bloques usados por cada directorio, incluyendo todos sus subdirectorios.&lt;br /&gt;&lt;br /&gt;Ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;36.wc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Es útil para contabilizar el contenido de los archivos, el numero de líneas, palabras y caracteres.&lt;br /&gt;&lt;br /&gt;Sintaxis.&lt;br /&gt;&lt;br /&gt;wc [-l][-w][-c] nom-arch&lt;br /&gt;&lt;br /&gt;-l Despliega el numero de líneas&lt;br /&gt;-w Despliega el numero de palabras&lt;br /&gt;-c Despliega el numero de caracteres&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;37.comm &lt;span style="font-weight:bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Modo de empleo: comm [OPCIÓN]... FICHERO1 FICHERO2 &lt;br /&gt;Compara los ficheros ordenados FICHERO1 y FICHERO2 línea por línea. &lt;br /&gt;&lt;br /&gt;Sin ninguna opción, produce un resultado en tres columnas. La columna &lt;br /&gt;uno contiene las líneas únicas al FICHERO1, la columna dos contiene las líneas únicas al FICHERO2, y la columna tres contiene las líneas &lt;br /&gt;comunes a ambos ficheros. &lt;br /&gt;&lt;br /&gt;Compara los ficheros ordenados FICHERO_IZQUIERDO y FICHERO_DERECHO, línea por línea. &lt;br /&gt;&lt;br /&gt;  -1              suprime las líneas que sólo están en el izquierdo &lt;br /&gt;  -2              suprime las líneas que sólo están en el derecho &lt;br /&gt;  -3              suprime las líneas que aparecen en los dos &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;38.cmp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Comando cmp (compare). Nos dice en forma muy limitada si dos archivos son diferentes.&lt;br /&gt;&lt;br /&gt;Al comparar los archivos archivo1 y archivo2, estos difieren, aunque no aclara cual es la diferencia.&lt;br /&gt;&lt;br /&gt;El uso general de este comando es para cerciorarnos de que dos archivos realmente tienen el mismo contenido y funciona para cualquier tipo de archivo. Si dos archivos son iguales, el comando cmp no indica nada.&lt;br /&gt;&lt;br /&gt;Ejemplo:&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ cmp archivo1 archivo2 &lt;br /&gt;archivo1 archivo2 son distintos: byte 2, línea 1 &lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;39.passwd&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este comando instala (en caso de no existir anteriormente), o cambia el Password para acceder a nuestra área de trabajo. &lt;br /&gt;&lt;br /&gt;Ejemplo:&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ passwd &lt;br /&gt;Changing password for christian &lt;br /&gt;(current) UNIX password: *********&lt;br /&gt;Enter new UNIX password: ******&lt;br /&gt;Retype new UNIX password: ******&lt;br /&gt;passwd: contraseña actualizada correctamente &lt;br /&gt;&lt;br /&gt;El password de una cuenta, únicamente puede cambiarlo el propietario de la cuenta o el superusuario. Para eliminarlo, solo puede hacerlo el superusuario.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;40.su&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este comando nos da la facilidad de cambiarnos a otra área de trabajo o cuenta de un usuario diferente, del área donde nos encontramos trabajando. En caso de que la cuenta a la que deseamos acceder tenga clave o password, debe teclear el password.&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ su &lt;br /&gt;Password: *******&lt;br /&gt;root@christian-laptop:/home/christian# &lt;br /&gt;&lt;br /&gt;Si es correcto el password o clave, da acceso a la cuenta, respondiendo con el promt del sistema.&lt;br /&gt;En caso de ser incorrecto, no permite el acceso a la cuenta solicitada y manda el mensaje “contraseña incorrecta”&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;41.chown&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cambia el propietario de un archivo.&lt;br /&gt;&lt;br /&gt;Sintaxis: &lt;br /&gt;chown [-R] nuevo-prop nom-arch&lt;br /&gt;&lt;br /&gt;Donde&lt;br /&gt;-R   En caso de ser un directorio, cambia desde la raíz     hasta sus  ramas o archivos descendientes.&lt;br /&gt;nuevo-prop  debe de existir forzosamente, en caso contrario       desplegará un mensaje de error.&lt;br /&gt;&lt;br /&gt;Si al momento de dar enter al comando en línea, aparece un mensaje de MUST BE ROOT TO USE CHOWN, necesita cambiarse al área de root (superusuario, ya que tiene todos los privilegios que brinda el sistema) para cambiar el propietario del archivo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;42.chgrp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Cambia el grupo a un archivo. &lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;chgrp [-R] nuevo-grupo nom-arch&lt;br /&gt;&lt;br /&gt;Donde:&lt;br /&gt;&lt;br /&gt;-R   En caso de ser un directorio cambia desde la raíz     hasta sus ramas o archivos descendientes.&lt;br /&gt;&lt;br /&gt;nuevo-grupo debe existir forzosamente, en caso contrario,      desplegará un mensaje de error.&lt;br /&gt;&lt;br /&gt;Si al momento de dar enter al comando en línea, aparece un mensaje de MUST BE ROOT TO USE CHOWN, necesita cambiarse al área de root (superusuario, ya que tiene todos los privilegios que brinda el sistema) para cambiar el propietario del archivo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;43.ps&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Imprime información acerca de los procesos activos. Sin opciones, ps imprime información acerca de los procesos asociados con la terminal actual. La salida contiene solamente el PID, el TTY, el TIME y el COMD. En otro caso, la información que es desplegada es controlada por las opciones. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Algunas opciones de ps son:&lt;br /&gt;&lt;br /&gt;-a&lt;br /&gt;Despliega información acerca de todos los procesos mas frecuentemente usados, excepto los procesos que no están asociados a una terminal; contiene los siguiente campos: PID, TTY, TIME y COMD&lt;br /&gt;-u&lt;br /&gt;Despliega los procesos asociados a un usuario, con PID, TTY, TIME y COMD&lt;br /&gt;-g&lt;br /&gt;Indicando el GID como argumento despliega los procesos asociados a un determinado grupo, con PID, TTY, TIME y COMD &lt;br /&gt;-t&lt;br /&gt;Despliega una lista de procesos asociados con una determinada terminal, con PID, TTY, TIME y COMD &lt;br /&gt;-l&lt;br /&gt;Genera una lista de los procesos con formato largo: F, S, UID, PID, PPID, C, PRI, NI, ADDR, SZ, WCHAN, TTY, TIME y COMD&lt;br /&gt;-F&lt;br /&gt;Genera una full list que  contiene: UID, PID, PPID, C, STIME, TTY, TIME y COMD&lt;br /&gt;-e&lt;br /&gt;Imprime información de cada proceso que actualmente está corriendo con: PID, TTY, TIME, y COMD.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;44.kill&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;kill. Este comando es para terminar la ejecución de un proceso. obtenemos el numero de proceso que deseamos terminar con el comando ps. &lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;kill [-9] num-proc&lt;br /&gt;&lt;br /&gt;El rango de las opciones mas comunes va del 0 al 15, estas opciones también son conocidas como señales. Un usuario puede matar únicamente sus procesos, solo el superusuario puede matar cualquier proceso.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;45.history&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Se utilizar para visualizar el histórico de órdenes, estás ordenes pueden ser repetidas.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;history&lt;br /&gt;&lt;br /&gt;Para repetir una orden debemos de colocar en el bash el signo ! seguido del número de orden que deseamos repetir.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;46.alias&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este comando se utiliza para hacer sustituciones de ordenes. Nos permite captar la salida de una orden y asignarla a una variable.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;alias fecha=date&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;47.cut&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El filtro cut se usa para cortar y pasar a la salida estándar las columnas. La opción -c es para cortar columnas.&lt;br /&gt;&lt;br /&gt;sintaxis&lt;br /&gt;&lt;br /&gt;cut -c 1-7 archivo&lt;br /&gt;&lt;br /&gt;estaremos cortando desdela columna 1 hasta la columna 7 del fichero archivo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;48.tr&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Esta orden se emplea como traductor, por ejemplo para cambiar de mayúsculas a minúsculas y viceversa. &lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;tr [A-Z] [a-z] &lt; archivo&lt;br /&gt;&lt;br /&gt;cada que encuentre una letra en el rango A-Z lo convertirá por su respectiva en el rango a-z.&lt;br /&gt;&lt;br /&gt;También podemos sustituir un rango de caracteres  por un carácter de la forma siguiente:&lt;br /&gt;&lt;br /&gt;tr [A-Z] x &lt; archivo&lt;br /&gt;&lt;br /&gt;El parámetro -d nos sirve para eliminar el carácter indicado en el fichero que le pasemos.&lt;br /&gt;&lt;br /&gt;tr -d [A-Z]&lt; ficho&lt;br /&gt;&lt;br /&gt;El parámetro -s nos permite eliminar carácteres repetidos en el archivo.&lt;br /&gt;&lt;br /&gt;tr -s [a-z] &lt; archivo&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;49.ln&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Crea en archivo destino una referencia cruzada dentro del sistema de archivos, (Link) al archivo origen con otro nombre. Normalmente este enlace apunta directamente a la posición de archivo origen dentro de un sistema de archivos.&lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~$ ln numero ./Desktop/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;50.gzip&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;gzip [parámetros] archivo(s)&lt;br /&gt;&lt;br /&gt;Este programa comprime el contenido de archivos mediante unos complicados procesos matemáticos. El nombre del archivo comprimido termina con .gz y se debe descomprimir antes de ser usado nuevamente. &lt;br /&gt;&lt;br /&gt;-d : Descomprime el archivo comprimido gzip, recuperando éste su tamaño original y pudiendo volver a ser utilizado de forma normal (corresponde al comando gunzip).&lt;br /&gt;&lt;br /&gt;Ejemplo:&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~/ejemplos$ gzip prueba.doc &lt;br /&gt;&lt;br /&gt;y para descomprimir:&lt;br /&gt;&lt;br /&gt;christian@christian-laptop:~/ejemplos$ gzip -d arch1.gz &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;51.mount &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El comando mount nos permitirá montar tanto las particiones como los dispositivos de almacenamiento (cdrom, disquetera,...) : &lt;br /&gt;&lt;br /&gt;Sintaxis:&lt;br /&gt;&lt;br /&gt; # mount -t tipo_dispositivo /dev/dispositivo_montar /destino&lt;br /&gt;&lt;br /&gt;-t:  Este argumento significa "type" y nos permitirá indicar el   dispositivo &lt;br /&gt;&lt;br /&gt;tipo_dispositivo: Indica qué es lo que queremos montar &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;iso9660 (Para el cdrom)&lt;br /&gt;msdos (Disquetera)&lt;br /&gt;NTFS (Si se trata de una partición de este tipo)&lt;br /&gt;&lt;br /&gt;/dev/dispositivo_montar: &lt;br /&gt;&lt;br /&gt;Es el nombre del dispositivo que se encarga de realizar la función de controlar la unidad, por ejemplo: /dev/cdrom se encarga del CD-ROM, mientras que /dev/fd0 se encarga de la disquetera.&lt;br /&gt;&lt;br /&gt;/destino: &lt;br /&gt;&lt;br /&gt;Es el directorio donde queremos visualizar el contenido del dispositivo, ya sea un cd, un disquete, o una partición.&lt;br /&gt;Montando el CD-ROM&lt;br /&gt;&lt;br /&gt;# mount -t iso9660 /dev/cdrom /mnt/cdrom&lt;br /&gt;&lt;br /&gt;Nota: /mnt/cdrom lo crean por defecto la mayoría de las distribuciones, Debian lo crea en el directorio /media, también podemos crear un directorio y montarlo en él. _IMPORTANTE: Poner un cd en el interior del cdrom si no, no irá la cosa ;)_&lt;br /&gt;&lt;br /&gt;Montando la disquetera&lt;br /&gt;&lt;br /&gt;#mount -t msdos /dev/fd0 /floppy&lt;br /&gt;&lt;br /&gt;Suponiendo que queramos ver el contenido de un disquete en el directorio /floppy&lt;br /&gt;&lt;br /&gt;Montado de particiones&lt;br /&gt;&lt;br /&gt;Para montar particiones primero debemos saber cuales son nuestros discos duros, así como cual es el numero de particiones y de que tipo son.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;52.addgroup&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Se utiliza para crear un grupo nuevo.&lt;br /&gt;Sintaxis: addgroup nom_grupo&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;53.adduser&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Se utiliza para añadir un usuario. En ese momento, no solo se creará la cuenta del usuario sino también su directorio de trabajo, un nuevo grupo de trabajo que se llamará igual que el usuario y añadirá una serie de ficheros de configuración al directorio de trabajo del nuevo usuario.&lt;br /&gt;&lt;br /&gt;Sintaxis: adduser nom_usuario [nom_grupo]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;54.apt-get install (paquetes)&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Instala paquetes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;55.apt-get remove (paquete)&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Borra paquetes. Con la opción –purge borramos tambien la configuración de los paquetes instalados.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;56.apt-get update&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Actualiza la lista de paquetes disponibles para instalar.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;57.apt-get upgrade&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Instala las nuevas versiones de los diferentes paquetes disponibles.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;58.delgroup&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Se utiliza para eliminar un grupo.&lt;br /&gt;Sintaxis: delgroup nom_grupo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;59.deluser&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Elimina una cuenta de usuario. El problema de este comando es que no elimina automáticamente el directorio de trabajo del usuario.&lt;br /&gt;Sintaxis: deluser nom_usuario&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-3827932661537634436?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3827932661537634436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3827932661537634436'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/comandos-de-linux.html' title='COMANDOS DE LINUX.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6180731139591946266</id><published>2007-10-20T21:53:00.000-05:00</published><updated>2007-10-20T22:00:20.976-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN MS-DOS'/><title type='text'>PRACTICAS DE MS-DOS.</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;center&gt;UNIVERSIDAD SALAZAR&lt;br /&gt;PROGRAMACION DE SISTEMAS &lt;br /&gt;PRÁCTICA 5.&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;1. Crea el siguiente árbol de directorios. &lt;br /&gt;Nota: sustituye la raiz (/) por la palabra root.&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;&lt;br /&gt;md root&lt;br /&gt;md root\bin&lt;br /&gt;md root\boot&lt;br /&gt;md root\dev&lt;br /&gt;md root\etc&lt;br /&gt;md root\home&lt;br /&gt;md root\lib&lt;br /&gt;md root\lost+found&lt;br /&gt;md root\misc&lt;br /&gt;md root\mnt&lt;br /&gt;md root\proc&lt;br /&gt;md root\root&lt;br /&gt;md root\sbin&lt;br /&gt;md root\tmp&lt;br /&gt;md root\usr&lt;br /&gt;md root\var&lt;br /&gt;md root\usr\src&lt;br /&gt;md root\usr\share&lt;br /&gt;md root\usr\sbin&lt;br /&gt;md root\usr\man&lt;br /&gt;md root\usr\local&lt;br /&gt;md root\usr\lib&lt;br /&gt;md root\usr\info&lt;br /&gt;md root\usr\include&lt;br /&gt;md root\usr\games&lt;br /&gt;md root\usr\etc&lt;br /&gt;md root\usr\doc&lt;br /&gt;md root\usr\bin&lt;br /&gt;md root\usr\x11r6&lt;br /&gt;md root\usr\x11&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;2.Crea un archivo de texto con el filtro sort, que  contenga 10 nombres, los iras introduciendo desordenadamente y el archivo debe de quedar ordenado de la a-z. El nombre del archivo será a_z.txt.&lt;br /&gt;&lt;br /&gt;sort /o a_z.txt &lt;br /&gt;alberto&lt;br /&gt;christian&lt;br /&gt;ivan&lt;br /&gt;jose &lt;br /&gt;julio&lt;br /&gt;lupita&lt;br /&gt;michelle&lt;br /&gt;paco&lt;br /&gt;romeo&lt;br /&gt;romina&lt;br /&gt;ctrl + z&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3.Ordena ese archivo pero ahora de la z_a, el resultado originara un archivo llamado z_a.txt, sin usar redireccionamiento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;sort /r /o z_a.txt a_z.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;4.haz el mismo ordenamiento a partir del archivo a_z.txt, que de cómo resultado los nombres ordenados inversamente, igual al caso anterior, pero en esta ocasión si utilizarás redireccionamiento y el archivo se llamara z_a_2.txt.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;sort /r a_z.txt &gt; z_a_2.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;5.Cambia la extensión del archivo a_z.txt por .doc utilizando el comando ren ó rename.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ren a_z.txt a_z.doc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;6.Cambia las extensiones de los archivos z_a.txt y z_a_2.txt por .doc sin utilizar el comando ren ó rename.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;move z_a.txt z_a.doc&lt;br /&gt;move z_a_2.txt z_a_2.doc &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7.Utilizando el comando echo y redireccionamiento crea un archivo llamado equipox.txt que contenga el nombre de 5 equipos de futbol.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;echo america &gt; equipos.txt&lt;br /&gt;echo pumas &gt;&gt; equipos.txt&lt;br /&gt;echo cruz_azul &gt;&gt; equipos.txt&lt;br /&gt;echo chivas &gt;&gt; equipos.txt&lt;br /&gt;echo jaguares &gt;&gt; equipos.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;8.Manda una copia de ese archivo a la carpeta root/usr/src ordenado alfabéticamente de la a_z, con el mismo nombre, sin afectar al archivo origen y sin usar redireccionamiento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;sort /o root\usr\src\equipos.txt equipos.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;9.Manda una copia del archivo equipos.txt a la carpeta root/usr/share ordenado alfabéticamente de la z_a, con el mismo nombre, sin afectar al archivo origen  usando redireccionamiento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;sort /r equipos.txt &gt; root\usr\share\equipos.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;10.Haz una copia de los archivos cuya extensión sea .doc a la ruta: root\usr\sbin&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy *.doc root\usr\sbin&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;11.Muestra el listado de archivos y directorio del árbol de directorios root, mostrando cada carpeta y cada archivo del directorio especificado y todos sus subdirectorios. Que el resultado te lo muestre pantalla a pantalla.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir /s root | more&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;12.Muestra el listado de los puros directorios del árbol de directorios root y todos sus subdirectorios. Que el resultado te lo muestre pantalla a pantalla.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir /ad /s root&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;13.Borra la etiqueta actual del disco&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;label&lt;br /&gt;enter&lt;br /&gt;s enter&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;14.Mueve los archivos a_z.doc z_a.doc y  a_z_2.doc  a la carpeta root\usr\man. En una sola línea de comandos.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;move *.doc root\usr\man&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;15. Muestra el directorio root y subsecuentes en forma de árbol de directorios, incluyendo los archivos contenidos en cada carpeta.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;tree /f root&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;16. Oculta los archivos con extensión .txt del directorio root y subsecuentes. (recursivamente)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;attrib +h /s root\*.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;17. Protégé contra escritura los archivos con extensión .doc del directorio root y subsecuentes. (recursivamente).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;attrib +r /s root\*.doc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;18.Haz una copia completa del directorio root, que se llame raíz, dicha copia debe de incluir el directorio root completito incluyendo todas las carpetas que dependan directa o indirectamente de él y los archivos contenidos en dichas carpetas. Ya no te debe de preguntar si el destino es un directorio o un archivo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;xcopy /e /i root raiz&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;19.Al copiar completo root, en el nuevo arbol (raiz)¿Qué paso con los archivos que estaban ocultos? ¿Qué paso con los archivos que estaban protegidos contra escritura?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Los  archivos ocultos no se copiaron, y los archivos protegidos contra escritura se desprotegieron al copiarse.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;20. Haz una nueva copia completa del arbol de directorios root, llamada reggae de nueva cuenta recursivamente, pero en esta ocasión los archivos de solo lectura deberán de conservar esa propiedad. Ya no te debe de preguntar si el destino es un directorio o un archivo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;xcopy /m /e /i root reggae&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;21. Haz una nueva copia del directorio root, llamada reggae2 pero esta vez copiaras solo la estructura del directorio, es decir, las puras carpetas sin archivos. Ya no te debe de preguntar si el destino es un directorio o un archivo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;xcopy /t /e root reggae2&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;22. Haz una nueva copia del directorio root, llamada reggae3, en donde se copien la estructura completa de las carpetas y únicamente los archivos que estén ocultos.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;xcopy /ah /e /i root reggae3&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;23. Desoculta los archivos que tengan atributo de oculto, del árbol de directorios reggae3 y directorios dependientes a este.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;attrib –h reggae3\*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;24. Elimina completamente el directorio reggae2, sin que te pida confirmación.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;rd /s /q reggae2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;25.Muestra los atributos de los archivos que se encuentren en el directorio root y sus directorios subsecuentes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;attrib /s root\*&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;26.Dependiendo del resultado anterior, fuerza la eliminación de los archivos que tengan el atributo R del directorio root y sus directorios subsecuentes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;del /s /f /q root&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;27.Oculta todos los archivos del directorio reggae3 y directorios subsecuentes.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;attrib +h /s reggae3\*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;28. Haz un listado con el comando dir, de únicamente los archivos ocultos que se encuentran en el directorio reggae3 y subsecuentes.&lt;br /&gt;&lt;br /&gt;dir /s /ah reggae3&lt;br /&gt;&lt;br /&gt;29. Elimina únicamente los archivos ocultos, del directorio reggae3 y subsecuentes. Sin que te pida confirmación.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;del /s /ah /q reggae3\*&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;30.Crea un archivo de texto llamado historial.txt, con el historial de los comandos que haz utilizado en el transcurso de esta práctica.&lt;br /&gt;&lt;br /&gt;doskey /h &gt; historial.txt&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6180731139591946266?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6180731139591946266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6180731139591946266'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/practicas-de-ms-dos_4509.html' title='&lt;center&gt;PRACTICAS DE MS-DOS.&lt;/center&gt;'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-4889028299807899592</id><published>2007-10-20T21:47:00.000-05:00</published><updated>2007-10-20T21:52:57.339-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN MS-DOS'/><title type='text'>PRACTICAS DE MS-DOS.</title><content type='html'>&lt;center&gt;UNIVERSIDAD SALAZAR&lt;br /&gt;PROGRAMACIÓN DE SISTEMAS&lt;br /&gt;PRÁCTICA 4.&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1.Realiza una macro llamado árbol, que te permita mostrar en forma de árbol (con el comando tree) dos directorios al mismo tiempo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey arbol=tree $1 $t tree $2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;2.Realiza una macro llamada tit_prompt que reciba un parámetro y lo utilice para cambiar el nombre del titulo y el prompt (el mismo parámetro para los dos nombres).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey tit_prompt=title $1 $t prompt $1&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;3.Crea una macro que se llame anexa, que pida dos parámetros, el primero será una cadena, el segundo el nombre de un archivo, la primera vez que ejecutes la macro se creara un archivo con el nombre del segunda cadena y se guardara en el archivo recién creado, a partir de la segunda vez que ejecutes la macro debería ir agregando las cadenas al archivo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey anexa=echo $1 $g$g $2&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;4.Crea una macro llamada copia2 que te permita copiar dos archivos cualesquiera a una carpeta que tu especifiques, el primer parámetro corresponderá al primer archivo a copiar, el segundo parámetro al segundo archivo a copiar, y finalmente el tercer parámetro corresponderá a la carpeta destino.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey copia2=copy $1 $3 $t copy $2 $3&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;5.Crea una macro llamada concatena1 que pida 3 parámetros, que serán nombres de archivos, los archivos se concatenarán uno tras de otro en el orden en que el usuario los teclee.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey concatena1=copy $1+$2+$3&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;6.Crea una macro que se llame busca1 que busque y te liste página por página todos los archivos ocultos y la carpeta donde se encuentran a partir de la raíz(c:\).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey buscar1=dir /ah /s c:\ $b more&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;7.Crea una macro que copie únicamente estructuras de directorios, sin archivos, recibirá dos parámetros, el primero será la carpeta raíz del árbol a copiar y el segundo parámetro el nombre de la copia.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey cop_est_arb=xcopy /t /e /i $1 $2&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;8.Crea dos macros, una que se llame rojo y la otra azul, y cuando sean invocadas cambien el fondo de la ventana por el color rojo claro y azul claro respectivamente.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey rojo=color c0&lt;br /&gt;&lt;br /&gt;doskey azul=color 90&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;9.Crea una macro llamada busca_cadena, que acepte dos parámetros, el segundo parametro será una cadena que será buscada en todos los archivos .txt de una carpeta, el nombre de la carpeta donde se hará la búsqueda será determinado por el primera parámetro.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey busca_cadena=type $1\*.txt $b find $2&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;10. Crea una macro que se llame orden, que acepte como primer parámetro el nombre de un archivo cuyo contenido  será ordenado alfabéticamente de la z a la a. y dará como resultado un archivo nuevo el cual nosotros proporcionaremos el nombre como parámetro 2.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey orden=sort /r /o $2 $1&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;11. Haz una macro una que se llame fecha_hora que cuando la invoques te devuelva únicamente la fecha y la hora del sistema. (elimina los ecos correspondientes de cada comando y el modo interactivo).&lt;br /&gt;&lt;br /&gt;fecha_hora=echo off $t date /t $t time /t $t echo on&lt;br /&gt;&lt;br /&gt;12. Crea una macro que se llame ayuda, que reciba un parámetro, que será el nombre de un comando, al invocar la macro, tomara el nombre de ese comando y guardara la ayuda del mismo en un archivo llamado manual.txt, este archivo se creara la primera vez que se ejecute la macro y no se debe reescribir cada vez que invoques la macro.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey ayuda=help $1 $g$g manual.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;13. Crea una macro llamada busca_fotos, que te muestre todos los archivos que hay en tu disco duro con extensión .jpg pero página por página.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;busca_fotos=dir /s c:\*.jpg $b more&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;14. Crea una macro llamada guarda_macros, que te guarde en un archivo llamado macros.txt todas las macros que hayas creado en la sesión activa, te cuidado de que la macro no se sobrescriba para que la puedas usar en otras sesiones y se vayan acumulando las macros.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;guarda_macros=doskey /macros $g$g macros.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;15. Crea una macro llamada carga_macros, que cargue las macros que hemos creado anteriormente, (las que estan contenidas en el archivo macros.txt) a memoria, para que las podamos utilizar en la nueva sesión.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;carga_macros=doskey /macrofile=macros.txt&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-4889028299807899592?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4889028299807899592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4889028299807899592'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/practicas-de-ms-dos_2346.html' title='PRACTICAS DE MS-DOS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-5627737537892450520</id><published>2007-10-20T21:35:00.000-05:00</published><updated>2007-10-20T21:45:51.710-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN MS-DOS'/><title type='text'>PRACTICAS DE MS-DOS.</title><content type='html'>&lt;span style="font-weight:bold;"&gt;&lt;center&gt;UNIVERSIDAD SALAZAR&lt;br /&gt;SISTEMAS OPERATIVOS MODERNOS&lt;br /&gt;PRÁCTICA 3.&lt;/center&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1.Con ayuda del comando echo y redireccionando la salida del mismo, crea un archivo de texto llamado fecha.txt que únicamente contenga la fecha de mañana en formato dd/mm/aa.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;echo 15/05/07 &gt; fecha.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;2.Cambia la fecha de tu sistema utilizando como entrada el archivo fecha.txt (pero usando redireccionamiento).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;date &lt; fecha.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3.Con ayuda del comando copy con crea un archivo de texto llamado hora.txt que únicamente contenga la hora: 23:59:59&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy con hora.txt&lt;br /&gt;23:59:59&lt;br /&gt;ctrl + z&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;4.Cambia la hora de tu sistema utilizando como entrada el archivo hora.txt (pero usando comando type y tuberías).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;type hora.txt | time&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;5. Muestra los archivos con el comando dir de tu directorio actual que contengan la extensión .txt.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir *.txt &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;6.Muestra los archivos con el comando dir de tu directorio actual que comienzen por a y tengan la extensión de excel.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir a*.xls&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;7.Muestra en pantalla el contenido de los archivos que comienzen por a, acaben por b y tengan la extensión de word en tu unidad local.&lt;br /&gt; &lt;br /&gt;&lt;span style="font-weight:bold;"&gt;type a*b.doc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;8. Muestra en pantalla el contenido de los archivos que contegan ‘asa’ y tengan las extensión .txt de tu unidad actual.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;type  *asa*.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;9.Lista los archivos que comiencen con la letra c, seguido de un carácter cualquiera, y luego ‘asa’. Deben de tener extensión propia de power point.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir c?asa.ppt&lt;/span&gt;&lt;br /&gt;  &lt;br /&gt;&lt;br /&gt;10. Lista todos los archivos que empiecen por c, tengan un carácter cualquiera, luego una b y cualquier extensión en tu ruta o unidad actual.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir c?b*.* &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;11. Muestra en pantalla el contenido de todos los archivos que tengan una extensión que empiece por b, luego un carácter cualquiera y luego una t.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;type *.b?t&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;12.Crea un archivo de texto llamado orden.txt en donde vayas metiendo los nombres desordenados y al finalizar el archivo (5 nombres) se ordenen automáticamente para que la salida orden.txt, contenga los nombres ordenaditos de la a-z.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;sort /o orden.txt&lt;br /&gt;javier&lt;br /&gt;luis&lt;br /&gt;zahid&lt;br /&gt;francisco&lt;br /&gt;roberto&lt;br /&gt;ctrl + z&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;13. A partir del archivo orden.txt y utilizando redireccionamiento crea un archivo de texto llamado z_a.txt que contenga los nombres de ordenado.txt pero ordenados inversamente (de la z a la a).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;sort /r /o z_a.txt &lt; orden.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;14.Guarda la ayuda del comando doskey en un archivo de texto llamado manuales.txt, utiliza redireccionamiento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey /? &gt; manuales.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;help doskey &gt; manuales.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;15.Anexale al final del archivo manuales.txt la ayuda del comando subst.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;help subst &gt;&gt; manuales.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;16.Crea un archivo llamado, ayuda_dir.txt que contenga la ayuda del comando dir, utiliza el redireccionamiento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir /? &gt; ayuda_dir.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;17. Combina los archivos, manuales.txt y ayuda_dir.txt de manera que se genere un archivo llamado manuales2.txt contenga la ayuda de los tres comandos que haz redireccionado en este orden: primero la ayuda del comando dir, seguido de la ayuda del comando doskey y por ultimo la ayuda del comando subst.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy ayuda_dir.txt+manuales.txt manuales2.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;18. Muestra el contenido del archivo manuales2.txt, con pausa por pantalla.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;more manuales2.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;19. Agregale al archivo manuales2.txt el historial de los comandos que haz utilizado hasta el momento.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey /history &gt;&gt; manuales2.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;20.Borra de memoria el historial del comando doskey&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;doskey /reinstall&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-5627737537892450520?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/5627737537892450520'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/5627737537892450520'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/practicas-de-ms-dos_20.html' title='PRACTICAS DE MS-DOS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-7749124066833372709</id><published>2007-10-20T21:26:00.000-05:00</published><updated>2007-10-20T21:35:15.275-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN MS-DOS'/><title type='text'>PRACTICAS DE MS-DOS.</title><content type='html'>&lt;center&gt;UNIVERSIDAD SALAZAR&lt;br /&gt;                          PROGRAMACIÓN DE SISTEMAS&lt;br /&gt;                                PRÁCTICA 2&lt;/center&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1.Utilizando redireccionamiento del comando echo crea tres archivos de texto llamados nombre.txt, apepat.txt y apemat.txt; con tu nombre, apellido paterno y apellido materno respectivamente.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;echo christian &gt; nombre.txt&lt;br /&gt;echo olvera &gt; apepat.txt&lt;br /&gt;echo becerra &gt; apemat.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;2.Con ayuda del comando type y redireccionamiento crea un archivo de texto llamado completo.txt, a partir del contenido de los archivos nombre.txt, apepat.txt y apemat.txt. Dicho archivo resultante debe de contener tu nombre completo con apellidos en este orden apellido paterno seguido de apellido materno y finalizando con tu nombre.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;type apepat.txt apemat.txt nombre,txt &gt; completo.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;3.Crea una unidad virtual llamada m: que refleje el contenido de mis documentos y posteriormente cambiate a esa unidad.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;subst m: “c:\Documents and settings\christian\Mis documentos ”&lt;br /&gt;m:&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;4.Con el redireccionamiento de los comandos indicados crea un archivo de texto llamado hoy.txt que contenga la fecha y la hora (únicamente) del dia de hoy.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;date /t &gt;  hoy.txt&lt;br /&gt;time /t &gt;&gt; hoy.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;5.Crea a partir de redireccionamiento un archivo de texto llamado listado.txt que contenga el listado de archivos y directorios de la unidad c:.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir c: &gt; listado.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;6.A partir del archivos listado.txt, con redireccionamiento y el filtro find crea un archivo de texto llamado espacio_libre.txt que contenga el espacio libre que hay en la unidad c:.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;find “bytes libres” listado.txt  &gt; espacio_libre.txt&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;7.Crea a partir de un redireccionamiento un archivo de texto llamado listado_documentos.txt que contenga el listado de los archivos y directorios de mis documentos y carpetas subsecuentes (recursividad).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir /s “c:\Documents and settings\christian\Mis documentos ” &gt; listado_documentos.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;8.A partir del archivo listado_documentos.txt crea un archivo de texto llamado archivos.txt en donde aparezcan unicamente las líneas del archivo listado_documentos.txt que contengan la palabra archivos.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;find “archivos” listado_documentos.txt &gt; archivos.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;9.Crea a partir de un redireccionamiento, tuberias y el filtro find un archivo de texto llamado total_archivos_windows.txt, que contenga las lineas donde aparece la palabra archivos que estan en windows y carpetas subsecuentes filtradas de un listado recursivo de la carpeta windows.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir /s c:\windows | find “archivos” &gt; total_archivos_windows.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;10.Elimina la unidad m:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;subst /d m:&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-7749124066833372709?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/7749124066833372709'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/7749124066833372709'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/practicas-de-ms-dos.html' title='PRACTICAS DE MS-DOS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-4355564928500081399</id><published>2007-10-20T21:16:00.001-05:00</published><updated>2007-10-20T21:23:52.147-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN MS-DOS'/><title type='text'>PRACTICAS EN MS-DOS, CON SUS RESPECTIVAS RESPUESTAS.</title><content type='html'>&lt;span style="font-weight:bold;"&gt;UNIVERSIDAD SALAZAR&lt;br /&gt;                             SISTEMAS OPERATIVOS MODERNOS&lt;br /&gt;                                     PRÁCTICA 1.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1.Muestra el tipo de archivo con el que esta asociada la extensión .doc&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;assoc .doc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;2.Muestra en que ruta esta el ejecutable de excel&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ftype Excel.Sheet.8&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;3.Crea el siguiente árbol de directorios. Utilizando el menor número de líneas de comando. (No más de 4).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;md  naturales\frutas\durazno&lt;br /&gt;md  naturales\frutas\piña&lt;br /&gt;md  naturales\verduras\chayote&lt;br /&gt;md naturales\verduras\papa&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;4.Muestra en forma de árbol, la estructura de directorios a partir del directorio NATURALES.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;tree NATURALES&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;5.Cambia el prompt y el titulo de la ventana por tu nombre.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;prompt christian&lt;br /&gt;title  christian&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;6.Crea 3 archivos de texto, llamado nombre.txt, ape_pat.txt y ape_mat.txt, que contenga tu nombre, tu apellido paterno, y tu apellido materno respectivamente.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy con nombre.txt&lt;br /&gt;christian&lt;br /&gt;ctrl ­+ z&lt;br /&gt;&lt;br /&gt;copy con ape_pat.txt&lt;br /&gt;olvera&lt;br /&gt;ctrl ­­+ z&lt;br /&gt;&lt;br /&gt;copy con ape_mat.txt&lt;br /&gt;becerra&lt;br /&gt;ctrl + z&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;7.Utilizando el comando copy, crea un archivo llamado completo.txt a partir de los archivos nombre.txt, ape_pat.txt y ape_mat.txt, que contenga tu nombre completo ordenado...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy  nombre.txt+ape_pat.txt+ape+mat.txt completo.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;8.Utilizando el comando type y redireccionamiento crea un archivo llamado completo2.txt que contenga tu nombre completo, a partir de los archivos nombre.txt, ape_apt.txt y ape_mat.txt&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;type nombre.txt ape_pat.txt ape_mat.txt &gt; completo2.txt&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;9.Crea un archivo que se llame dos_nombres.doc que sea la suma de completo.txt y completo2.txt.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy completo.txt+completo2.txt dos_nombres.doc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;ó&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;type completo.txt completo2.txt &gt; dos.nombres.doc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;10.Utilizando comodines haz una copia de todos los archivos con extensión .txt a la carpeta PAPA.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy *.txt c:\naturales\verduras\papa&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;11.Utilizando comodines (por lo menos una vez usando el ?) haz una copia de todos los archivos cuya extensión tenga como segunda letra la letra o a la carpeta CHAYOTE.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;copy *.?o? c:\naturales\verdura\chayote&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;12.Haz una copia de la carpeta naturales incluyendo archivos y directorios vacíos, llamada naturales2. Sin que te pregunte si el destino es un archivo o directorio (obviamente es un directorio).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;xcopy /e /i naturales  naturales2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;13.Crea una copia de la carpeta naturales2 llamada naturales3, omitiendo los directorios vacíos y archivos. Y sin que te pregunte si el destino es un directorio o un archivo(obviamente nuevamente es un directorio).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;xcopy /t /i naturales2 naturales3&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;14.Elimina el directorio naturales2 recursivamente (aunque no este vacío) y sin que te muestre los archivos o carpetas que va eliminando.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;rd  /s /q naturales2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;15.Muestra con el comando dir, el contenido de la carpeta naturales, con sus respectivas subcarpetas y los archivos contenidos en cada una de ellas.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;dir /s naturales&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;16. cambia la etiqueta de la unidad actual por tu nombre&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;label christian&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;17. Crea una unidad virtual llamada w: para la carpeta c:\windows.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;subst w: c:\windows&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;18. Cambia el aspecto de la consola por un fondo amarillo claro y letras azules.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;color e1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;19. Cambia la hora del sistema por las 6:50 a.m. en una sola línea de comandos&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;time 6:50&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;20. Cambia la fecha del sistema al día del maestro en una sola línea de comandos.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;date 15-05-07&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;21. Crea un archivo de texto llamado datos.txt, utilizando redireccionamiento que contenga en este orden, la versión del s.o. la etiqueta del volumen, la pura fecha y la pura hora...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;ver &gt; datos.txt&lt;br /&gt;vol &gt;&gt; datos.txt&lt;br /&gt;date /t &gt;&gt; datos.txt&lt;br /&gt;time /t &gt;&gt; datos.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;22. Muestra únicamente la línea de la fecha del archivo datos.txt.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;find “2007” datos.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;23. Renombra el directorio naturales, por naturals sin usar el comando ren o rename.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;move naturales naturals&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;CONTINUARA...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-4355564928500081399?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4355564928500081399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4355564928500081399'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/practicas-en-ms-dos-con-sus-respectivas.html' title='PRACTICAS EN MS-DOS, CON SUS RESPECTIVAS RESPUESTAS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-3875611580526764858</id><published>2007-10-20T21:08:00.000-05:00</published><updated>2007-10-20T21:24:34.810-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ING. EN SISTEMAS COMPUTACIONALES'/><title type='text'>TUTORIAL DE MySQL.</title><content type='html'>&lt;span style="font-weight:bold;"&gt;Tutorial básico de MySQL&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El objetivo de este tutorial es mostrar el uso del programa cliente mysql para crear y usar una sencilla base de datos. mysql (algunas veces referido como "monitor mysql") es un programa interactivo que permite conectarnos a un servidor MySQL, ejecutar algunas consultas, y ver los resultados. mysql puede ser usado también en modo batch: es decir, se pueden colocar toda una serie de consultas en un archivo, y posteriormente decirle a mysql que ejecute dichas consultas. Este tutorial asume que mysql está instalado en alguna máquina y que disponemos de un servidor MySQL al cuál podemos conectarnos. Si este no es el caso, tenemos que contactar con nuestro administrador MySQL. (Si nosotros somos los administradores, es necesario consultar la documentación de MySQL que se refiere a la instalación y configuración del servidor MySQL). Para ver la lista de opciones proporcionadas por mysql, lo invocamos con la opción --help: &lt;br /&gt;shell&gt; mysql --help&lt;br /&gt;&lt;br /&gt;A continuación se describe el proceso completo de creación y uso de una base de datos en MySQL. Si se está interesado sólo en el acceso y uso de una base de datos existente, se pueden omitir las secciones que describen como crear la base de datos y las tablas correspondientes. Puesto que es imposible que se describan a detalle muchos de los tópicos cubiertos en este artículo, se recomienda que se consulte el manual de MySQL para obtener más información al respecto. &lt;br /&gt;Conectándose y desconectándose al servidor MySQL &lt;br /&gt;Para conectarse al servidor, usualmente necesitamos de un nombre de usuario (login) y de una contraseña (password), y si el servidor al que nos deseamos conectar está en una máquina diferente de la nuestra, también necesitamos indicar el nombre o la dirección IP de dicho servidor. Una vez que conocemos estos tres valores, podemos conectarnos de la siguiente manera: &lt;br /&gt;shell&gt; mysql -h NombreDelServidor -u NombreDeUsuario -p&lt;br /&gt;&lt;br /&gt;Cuando ejecutamos este comando, se nos pedirá que proporcionemos también la contraseña para el nombre de usuario que estamos usando. Si la conexión al servidor MySQL se pudo establecer de manera satisfactoria, recibiremos el mensaje de bienvenida y estaremos en el prompt de mysql: &lt;br /&gt;shell&gt;mysql -h casita -u blueman -p&lt;br /&gt;Enter password: ******&lt;br /&gt;&lt;br /&gt;Welcome to the MySQL monitor.  Commands end with ; or \g.&lt;br /&gt;Your MySQL connection id is 5563 to server version: 3.23.41&lt;br /&gt;&lt;br /&gt;Type 'help;' or '\h' for help. Type '\c' to clear the buffer.&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;Este prompt nos indica que mysql está listo para recibir comandos. Algunas instalaciones permiten que los usuarios se conecten de manera anónima al servidor corriendo en la máquina local. Si es el caso de nuestra máquina, debemos de ser capaces de conectarnos al servidor invocando a mysql sin ninguna opción: &lt;br /&gt;shell&gt; mysql&lt;br /&gt;Después de que nos hemos conectado de manera satisfactoria, podemos desconectarnos en cualquier momento al escribir "quit", "exit", o presionar CONTROL+D. La mayoría de los ejemplos siguientes asume que estamos conectados al servidor, lo cual se indica con el prompt de mysql. &lt;br /&gt;Ejecutando algunas consultas &lt;br /&gt;En este momento debimos de haber podido conectarnos ya al servidor MySQL, aún cuando no hemos seleccionado alguna base de datos para trabajar. Lo que haremos a continuación es escribir algunos comandos para irnos familiarizando con el funcionamiento de mysql &lt;br /&gt;mysql&gt; SELECT VERSION(), CURRENT_DATE;&lt;br /&gt;+-----------+--------------+&lt;br /&gt;| VERSION() | CURRENT_DATE |&lt;br /&gt;+-----------+--------------+&lt;br /&gt;| 3.23.41   | 2002-10-01   |&lt;br /&gt;+-----------+--------------+&lt;br /&gt;1 row in set (0.03 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt; &lt;br /&gt;Este comando ilustra distintas cosas acerca de mysql: &lt;br /&gt;Un comando normalmente consiste de un sentencia SQL seguida por un punto y coma. &lt;br /&gt;Cuando emitimos un comando, mysql lo manda al servidor para que lo ejecute, nos muestra los resultados y regresa el prompt indicando que está listo para recibir más consultas. &lt;br /&gt;mysql muestra los resultados de la consulta como una tabla (filas y columnas). La primera fila contiene etiquetas para las columnas. Las filas siguientes muestran los resultados de la consulta. Normalmente las etiquetas de las columnas son los nombres de los campos de las tablas que estamos usando en alguna consulta. Si lo que estamos recuperando es el valor de una expresión (como en el ejemplo anterior) las etiquetas en las columnas son la expresión en sí. &lt;br /&gt;mysql muestra cuántas filas fueron regresadas y cuanto tiempo tardó en ejecutarse la consulta, lo cual puede darnos una idea de la eficiencia del servidor, aunque estos valores pueden ser un tanto imprecisos ya que no se muestra la hora del CPU, y porque pueden verse afectados por otros factores, tales como la carga del servidor y la velocidad de comunicación en una red. &lt;br /&gt;Las palabras clave pueden ser escritas usando mayúsculas y minúsculas. &lt;br /&gt;Las siguientes consultas son equivalentes: &lt;br /&gt;mysql&gt; SELECT VERSION(), CURRENT_DATE;&lt;br /&gt;mysql&gt; select version(), current_date;&lt;br /&gt;mysql&gt; SeLeCt vErSiOn(), current_DATE;&lt;br /&gt;Aquí está otra consulta que demuestra como se pueden escribir algunas expresiones matemáticas y trigonométricas: &lt;br /&gt;mysql&gt; SELECT SIN(PI()/4), (4+1)*5;&lt;br /&gt;+-------------+---------+&lt;br /&gt;| SIN(PI()/4) | (4+1)*5 |&lt;br /&gt;+-------------+---------+&lt;br /&gt;|    0.707107 |      25 |&lt;br /&gt;+-------------+---------+&lt;br /&gt;&lt;br /&gt;Aunque hasta este momento se han escrito sentencias sencillas de una sola línea, es posible escribir más de una sentencia por línea, siempre y cuando estén separadas por punto y coma: &lt;br /&gt;mysql&gt; SELECT VERSION(); SELECT NOW();&lt;br /&gt;+-----------+&lt;br /&gt;| VERSION() |&lt;br /&gt;+-----------+&lt;br /&gt;| 3.23.41   |&lt;br /&gt;+-----------+&lt;br /&gt;1 row in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;+---------------------+&lt;br /&gt;| NOW()               |&lt;br /&gt;+---------------------+&lt;br /&gt;| 2002-10-28 14:26:04 |&lt;br /&gt;+---------------------+&lt;br /&gt;1 row in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;Un comando no necesita ser escrito en una sola línea, así que los comandos que requieran de varias líneas no son un problema. mysql determinará en dónde finaliza la sentencia cuando encuentre el punto y coma, no cuando encuentre el fin de línea. Aquí está un ejemplo que muestra un consulta simple escrita en varias líneas: &lt;br /&gt;mysql&gt; SELECT&lt;br /&gt;    -&gt; USER(),&lt;br /&gt;    -&gt; CURRENT_DATE;&lt;br /&gt;+-------------------+--------------+&lt;br /&gt;| USER()            | CURRENT_DATE |&lt;br /&gt;+-------------------+--------------+&lt;br /&gt;| blueman@localhost | 2002-09-14   |&lt;br /&gt;+-------------------+--------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;En este ejemplo debe notarse como cambia el prompt (de mysql&gt; a -&gt;) cuando se escribe una consulta en varias líneas. Esta es la manera en cómo mysql indica que está esperando a que finalice la consulta. Sin embargo si deseamos no terminar de escribir la consulta, podemos hacerlo al escribir \c como se muestra en el siguiente ejemplo: &lt;br /&gt;mysql&gt; SELECT&lt;br /&gt;    -&gt; USER(),&lt;br /&gt;    -&gt; \c&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;De nuevo, se nos regresa el comando el prompt mysql&gt; que nos indica que mysql está listo para una nueva consulta. En la siguiente tabla se muestran cada uno de los prompts que podemos obtener y una breve descripción de su significado para mysql: &lt;br /&gt;Prompt &lt;br /&gt;Significado &lt;br /&gt;mysql&gt; &lt;br /&gt;Listo para una nueva consulta. &lt;br /&gt;-&gt; &lt;br /&gt;Esperando la línea siguiente de una consulta multi-línea. &lt;br /&gt;'&gt; &lt;br /&gt;Esperando la siguiente línea para completar una cadena que comienza con una comilla sencilla ( ' ). &lt;br /&gt;"&gt; &lt;br /&gt;Esperando la siguiente línea para completar una cadena que comienza con una comilla doble ( " ).&lt;br /&gt;Los comandos multi-línea comúnmente ocurren por accidente cuando tecleamos ENTER, pero olvidamos escribir el punto y coma. En este caso mysql se queda esperando para que finalicemos la consulta: &lt;br /&gt;mysql&gt; SELECT USER()&lt;br /&gt;    -&gt;&lt;br /&gt;&lt;br /&gt;Si esto llega a suceder, muy probablemente mysql estará esperando por un punto y coma, de manera que si escribimos el punto y coma podremos completar la consulta y mysql podrá ejecutarla: &lt;br /&gt;mysql&gt; SELECT USER()&lt;br /&gt;    -&gt; ;&lt;br /&gt;+----------------+&lt;br /&gt;| USER()         |&lt;br /&gt;+----------------+&lt;br /&gt;| root@localhost |&lt;br /&gt;+----------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;Los prompts '&gt; y "&gt; ocurren durante la escritura de cadenas. En mysql podemos escribir cadenas utilizando comillas sencillas o comillas dobles (por ejemplo, 'hola' y "hola"), y mysql nos permite escribir cadenas que ocupen múltiples líneas. De manera que cuando veamos el prompt '&gt; o "&gt; , mysql nos indica que hemos empezado a escribir una cadena, pero no la hemos finalizado con la comilla correspondiente. Aunque esto puede suceder si estamos escribiendo una cadena muy grande, es más frecuente que obtengamos alguno de estos prompts si inadvertidamente escribimos alguna de estas comillas. Por ejemplo: &lt;br /&gt;mysql&gt; SELECT * FROM mi_tabla WHERE nombre = "Lupita AND edad &lt; 30; &lt;br /&gt;"&gt;&lt;br /&gt;&lt;br /&gt;Si escribimos esta consulta SELECT y entonces presionamos ENTER para ver el resultado, no sucederá nada. En lugar de preocuparnos porque la consulta ha tomado mucho tiempo, debemos notar la pista que nos da mysql cambiando el prompt. Esto nos indica que mysql está esperando que finalicemos la cadena iniciada ("Lupita). En este caso, ¿qué es lo que debemos hacer? . La cosa más simple es cancelar la consulta. Sin embargo, no basta con escribir \c, ya que mysql interpreta esto como parte de la cadena que estamos escribiendo. En lugar de esto, debemos escribir antes la comilla correspondiente y después \c : &lt;br /&gt;mysql&gt; SELECT * FROM mi_tabla WHERE nombre = "Lupita AND edad &lt; 30;&lt;br /&gt;"&gt; " \c&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;El prompt cambiará de nuevo al ya conocido mysql&gt;, indicándonos que mysql está listo para una nueva consulta. Es sumamente importante conocer lo que significan los prompts '&gt; y "&gt;, ya que si en algún momento nos aparece alguno de ellos, todas la líneas que escribamos a continuación serán consideradas como parte de la cadena, inclusive cuando escribimos QUIT. Esto puede ser confuso, especialmente si no sabemos que es necesario escribir la comilla correspondiente para finalizar la cadena, para que podamos escribir después algún otro comando, o terminar la consulta que deseamos ejecutar.&lt;br /&gt;Creando y usando una base de datos &lt;br /&gt;Ahora que conocemos como escribir y ejecutar sentencias, es tiempo de accesar a una base de datos. Supongamos que tenemos diversas mascotas en casa (nuestro pequeño zoológico) y deseamos tener registros de los datos acerca de ellas. Podemos hacer esto al crear tablas que guarden esta información, para que posteriormente la consulta de estos datos sea bastante fácil y de manera muy práctica. Esta sección muestra como crear una base de datos, crear una tabla, incorporar datos en una tabla, y recuperar datos de las tablas de diversas maneras. La base de datos "zoologico" será muy simple (deliveradamente), pero no es difícil pensar de situaciones del mundo real en la cual una base de datos similar puede ser usada. Primeramente usaremos la sentencia SHOW para ver cuáles son las bases de datos existentes en el servidor al que estamos conectados: &lt;br /&gt;mysql&gt; SHOW DATABASES;&lt;br /&gt;+----------+&lt;br /&gt;| Database |&lt;br /&gt;+----------+&lt;br /&gt;| mysql    |&lt;br /&gt;| test     |&lt;br /&gt;+----------+&lt;br /&gt;2 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;Es probable que la lista de bases de datos que veamos sea diferente en nuestro caso, pero seguramente las bases de datos "mysql" y "test" estarán entre ellas. En particular, la base de datos "mysql" es requerida, ya que ésta tiene la información de los privilegios de los usuarios de MySQL. La base de datos "test" es creada durante la instalación de MySQL con el propósito de servir como área de trabajo para los usuarios que inician en el aprendizaje de MySQL. Se debe anotar también que es posible que no veamos todas las bases de datos si no tenemos el privilegio SHOW DATABASES. Se recomienda revisar la sección del manual de MySQL dedicada a los comandos GRANT y REVOKE. Si la base de datos "test" existe, hay que intentar accesar a ella: &lt;br /&gt;mysql&gt; USE test&lt;br /&gt;Database changed&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;Observar que USE, al igual que QUIT, no requieren el uso del punto y coma, aunque si se usa éste, no hay ningún problema. El comando USE es especial también de otra manera: éste debe ser usado en una sola línea. Podríamos usar la base de datos "test" (si tenemos acceso a ella) para los ejemplos que vienen a continuación, pero cualquier cosa que hagamos puede ser eliminada por cualquier otro usuario que tenga acceso a esta base de datos. Por esta razón, es recomendable que preguntemos al administrador MySQL acerca de la base de datos que podemos usar. Supongamos que deseamos tener una base de datos llamada "zoologico" (nótese que no se está acentuando la palabra) a la cual sólo nosotros tengamos acceso, para ello el administrador necesita ejecutar un comando como el siguiente: &lt;br /&gt;mysql&gt; GRANT ALL on zoologico.* TO MiNombreUsuario@MiComputadora &lt;br /&gt;    -&gt; IDENTIFIED BY 'MiContraseña';&lt;br /&gt;&lt;br /&gt;en donde MiNombreUsuario es el nombre de usuario asignado dentro del contexto de MySQL, MiComputadora es el nombre o la dirección IP de la computadora desde la que nos conectamos al servidor MySQL, y MiContraseña es la contraseña que se nos ha asignado, igualmente, dentro del ambiente de MySQL exclusivamente. Ambos, nombre de usuario y contraseña no tienen nada que ver con el nombre de usuario y contraseña manejados por el sistema operativo (si es el caso). &lt;br /&gt;Si el administrador creó la base de datos al momento de asignar los permisos, podemos hacer uso de ella. De otro modo, nosotros debemos crearla: &lt;br /&gt;mysql&gt; USE zoologico&lt;br /&gt;ERROR 1049: Unknown database 'zoologico'&lt;br /&gt;mysql&gt;&lt;br /&gt;El mensaje anterior indica que la base de datos no ha sido creada, por lo tanto necesitamos crearla. &lt;br /&gt;mysql&gt; CREATE DATABASE zoologico;&lt;br /&gt;Query OK, 1 row affected (0.00 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt; USE zoologico&lt;br /&gt;Database changed&lt;br /&gt;mysql&gt;&lt;br /&gt;Bajo el sistema operativo Unix, los nombres de las bases de datos son sensibles al uso de mayúsculas y minúsculas (no como las palabras clave de SQL), por lo tanto debemos de tener cuidado de escribir correctamente el nombre de la base de datos. Esto es cierto también para los nombres de las tablas. Al crear una base de datos no se selecciona ésta de manera automática; debemos hacerlo de manera explícita, por ello usamos el comando USE en el ejemplo anterior. La base de datos se crea sólo una vez, pero nosotros debemos seleccionarla cada vez que iniciamos una sesión con mysql. Por ello es recomendable que se indique la base de datos sobre la que vamos a trabajar al momento de invocar al monitor de MySQL. Por ejemplo: &lt;br /&gt;shell&gt;mysql -h casita -u blueman -p zoologico&lt;br /&gt;&lt;br /&gt;Enter password: ******&lt;br /&gt;Welcome to the MySQL monitor.  Commands end with ; or \g.&lt;br /&gt;Your MySQL connection id is 17 to server version: 3.23.38-nt&lt;br /&gt;&lt;br /&gt;Type 'help;' or '\h' for help. Type '\c' to clear the buffer&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;Observar que "zoologico" no es la contraseña que se está proporcionando desde la línea de comandos, sino el nombre de la base de datos a la que deseamos acceder. Si deseamos proporcionar la contraseña en la línea de comandos después de la opción "-p", debemos de hacerlo sin dejar espacios (por ejemplo, -phola123, no como -p hola123). Sin embargo, escribir nuestra contraseña desde la línea de comandos no es recomendado, ya que es bastante inseguro. &lt;br /&gt;Creando una tabla &lt;br /&gt;Crear la base de datos es la parte más fácil, pero en este momento la base de datos está vacía, como lo indica el comando SHOW TABLES: &lt;br /&gt;mysql&gt; SHOW TABLES;&lt;br /&gt;Empty set (0.00 sec)&lt;br /&gt;&lt;br /&gt;La parte un tanto complicada es decidir la estructura que debe tener nuestra base de datos: qué tablas se necesitan y qué columnas estarán en cada tabla. En principio, necesitamos una tabla que contenga un registro para cada una de nuestras mascotas. Ésta puede ser una tabla llamada mascotas, y debe contener por lo menos el nombre de cada uno de nuestros animalitos. Ya que el nombre en sí no es muy interesante, la tabla debe contener alguna otra información. Por ejemplo, si más de una persona en nuestra familia tiene una mascota, es probable que tengamos que guardar la información acerca de quien es el dueño de cada mascota. Así mismo, también sería interesante contar con alguna información más descriptiva tal como la especie, y el sexo de cada mascota. ¿Y que sucede con la edad?. Esto puede ser también de interés, pero no es una buena idea almacenar este dato en la base de datos. La edad cambia conforme pasa el tiempo, lo cual significa que debemos de actualizar los registros frecuentemente. En vez de esto, es una mejor idea guardar un valor fijo, tal como la fecha de nacimiento. Entonces, cuando necesitemos la edad, la podemos calcular como la diferencia entre la fecha actual y la fecha de nacimiento. MySQL proporciona funciones para hacer operaciones entre fechas, así que no hay ningún problema. Al almacenar la fecha de nacimiento en lugar de la edad tenemos algunas otras ventajas: Podemos usar la base de datos para tareas tales como generar recordatorios para cada cumpleaños próximo de nuestras mascotas. Podemos calcular la edad en relación a otras fechas que la fecha actual. Por ejemplo, si almacenamos la fecha en que murió nuestra mascota en la base de datos, es fácil calcular que edad tenía nuestro animalito cuando falleció. Es probable que estemos pensando en otro tipo de información que sería igualmente útil en la tabla "mascotas", pero para nosotros será suficiente por ahora contar con información de nombre, propietario, especie, nacimiento y fallecimiento. Usaremos la sentencia CREATE TABLE para indicar como estarán conformados los registros de nuestras mascotas. &lt;br /&gt;mysql&gt; CREATE TABLE mascotas( &lt;br /&gt;    -&gt; nombre VARCHAR(20), propietario VARCHAR(20),&lt;br /&gt;    -&gt; especie VARCHAR(20), sexo CHAR(1), nacimiento DATE,&lt;br /&gt;    -&gt; fallecimento DATE);&lt;br /&gt;Query OK, 0 rows affected (0.02 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;VARCHAR es una buena elección para los campos nombre, propietario, y especie, ya que los valores que almacenarán son de longitud variable. No es necesario que la longitud de estas columnas sea la misma, ni tampoco que sea de 20. Se puede especificar cualquier longitud entre 1 y 255, lo que se considere más adecuado. Si resulta que la elección de la longitud de los campos que hemos hecho no resultó adecuada, MySQL proporciona una sentencia ALTER TABLE que nos puede ayudar a solventar este problema. El campo sexo puede ser representado en una variedad de formas, por ejemplo, "m" y "f", o tal vez "masculino" y "femenino", aunque resulta más simple la primera opción. El uso del tipo de dato DATE para los campos nacimiento y fallecimento debe de resultar obvio. Ahora que hemos creado la tabla, la sentencia SHOW TABLES debe producir algo como: &lt;br /&gt;mysql&gt; SHOW TABLES;&lt;br /&gt;+---------------------+&lt;br /&gt;| Tables_in_zoologico |&lt;br /&gt;+---------------------+&lt;br /&gt;| mascotas            |&lt;br /&gt;+---------------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Para verificar que la tabla fue creada como nosotros esperábamos, usaremos la sentencia DESCRIBE: &lt;br /&gt;mysql&gt; DESCRIBE mascotas;&lt;br /&gt;+--------------+-------------+------+-----+---------+-------+&lt;br /&gt;| Field        | Type        | Null | Key | Default | Extra |&lt;br /&gt;+--------------+-------------+------+-----+---------+-------+&lt;br /&gt;| nombre       | varchar(20) | YES  |     | NULL    |       |&lt;br /&gt;| propietario  | varchar(20) | YES  |     | NULL    |       |&lt;br /&gt;| especie      | varchar(20) | YES  |     | NULL    |       |&lt;br /&gt;| sexo         | char(1)     | YES  |     | NULL    |       |&lt;br /&gt;| nacimiento   | date        | YES  |     | NULL    |       |&lt;br /&gt;| fallecimento | date        | YES  |     | NULL    |       |&lt;br /&gt;+--------------+-------------+------+-----+---------+-------+&lt;br /&gt;6 rows in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt;&lt;br /&gt;&lt;br /&gt;Podemos hacer uso de la sentencia DESCRIBE en cualquier momento, por ejemplo, si olvidamos los nombres ó el tipo de las columnas en la tabla. &lt;br /&gt;Cargando datos en una tabla &lt;br /&gt;Después de haber creado la tabla, ahora podemos incorporar algunos datos en ella, para lo cual haremos uso de las sentencias INSERT y LOAD DATA. Supongamos que los registros de nuestras mascotas pueden ser descritos por los datos mostrados en la siguiente tabla. &lt;br /&gt;Nombre&lt;br /&gt;Propietario&lt;br /&gt;Especie&lt;br /&gt;Sexo&lt;br /&gt;Nacimiento&lt;br /&gt;Fallecimiento&lt;br /&gt;Fluffy&lt;br /&gt;Arnoldo&lt;br /&gt;Gato&lt;br /&gt;f&lt;br /&gt;1999-02-04&lt;br /&gt;&lt;br /&gt;Mau&lt;br /&gt;Juan&lt;br /&gt;Gato&lt;br /&gt;m&lt;br /&gt;1998-03-17&lt;br /&gt;&lt;br /&gt;Buffy&lt;br /&gt;Arnoldo&lt;br /&gt;Perro&lt;br /&gt;f&lt;br /&gt;1999-05-13&lt;br /&gt;&lt;br /&gt;FanFan&lt;br /&gt;Benito&lt;br /&gt;Perro&lt;br /&gt;m&lt;br /&gt;2000-08-27&lt;br /&gt;&lt;br /&gt;Kaiser&lt;br /&gt;Diana&lt;br /&gt;Perro&lt;br /&gt;m&lt;br /&gt;1998-08-31&lt;br /&gt;1997-07-29&lt;br /&gt;Chispa&lt;br /&gt;Omar&lt;br /&gt;Ave&lt;br /&gt;f&lt;br /&gt;1998-09-11&lt;br /&gt;&lt;br /&gt;Wicho&lt;br /&gt;Tomás&lt;br /&gt;Ave&lt;br /&gt;&lt;br /&gt;2000-02-09&lt;br /&gt;&lt;br /&gt;Skim&lt;br /&gt;Benito&lt;br /&gt;Serpiente&lt;br /&gt;m&lt;br /&gt;2001-04-29&lt;br /&gt;&lt;br /&gt;Debemos observar que MySQL espera recibir fechas en el formato YYYY-MM-DD, que puede ser diferente a lo que nosotros estamos acostumbrados. Ya que estamos iniciando con una tabla vacía, la manera más fácil de poblarla es crear un archivo de texto que contenga un registro por línea para cada uno de nuestros animalitos para que posteriormente carguemos el contenido del archivo en la tabla únicamente con una sentencia. Por tanto, debemos de crear un archivo de texto "mascotas.txt" que contenga un registro por línea con valores separados por tabuladores, cuidando que el orden de las columnas sea el mismo que utilizamos en la sentencia CREATE TABLE. Para valores que no conozcamos podemos usar valores nulos (NULL). Para representar estos valores en nuestro archivo debemos usar \N. El archivo mascotas.txt Para cargar el contenido del archivo en la tabla mascotas, usaremos el siguiente comando: &lt;br /&gt;mysql&gt; LOAD DATA LOCAL INFILE "mascotas.txt" INTO TABLE mascotas;&lt;br /&gt;La sentencia LOAD DATA nos permite especificar cuál es el separador de columnas, y el separador de registros, por default el tabulador es el separador de columnas (campos), y el salto de línea es el separador de registros, que en este caso son suficientes para que la sentencia LOAD DATA lea correctamente el archivo "mascotas.txt". Si lo que deseamos es añadir un registro a la vez, entonces debemos hacer uso de la sentencia INSERT. En la manera más simple, debemos proporcionar un valor para cada columna en el orden en el cual fueron listados en la sentencia CREATE TABLE. Supongamos que nuestra hermana Diana compra un nuevo hamster nombrado Pelusa. Podemos usar la sentencia INSERT para agregar su registro en nuestra base de datos. &lt;br /&gt;mysql&gt; INSERT INTO mascotas&lt;br /&gt;    -&gt; VALUES('Pelusa','Diana','Hamster','f','2000-03-30',NULL);&lt;br /&gt;Notar que los valores de cadenas y fechas deben estar encerrados entre comillas. También, con la sentencia INSERT podemos insertar el valor NULL directamente para representar un valor nulo, un valor que no conocemos. En este caso no se usa \N como en el caso de la sentencia LOAD DATA. De este ejemplo, debemos ser capaces de ver que es un poco más la tarea que se tiene que realizar si inicialmente cargamos los registros con varias sentencias INSERT en lugar de una única sentencia LOAD DATA. &lt;br /&gt;Recuperando información de una tabla &lt;br /&gt;La sentencia SELECT es usada para obtener la información guardada en una tabla. La forma general de esta sentencia es: SELECT LaInformaciónQueDeseamos FROM DeQueTabla WHERE CondiciónASatisfacer Aquí, LaInformaciónQueDeseamos es la información que queremos ver. Esta puede ser una lista de columnas, o un * para indicar "todas las columnas". DeQueTabla indica el nombre de la tabla de la cual vamos a obtener los datos. La claúsula WHERE es opcional. Si está presente, la CondiciónASatisfacer especifica las condiciones que los registros deben satisfacer para que puedan ser mostrados. &lt;br /&gt;Seleccionando todos los datos &lt;br /&gt;La manera más simple de la sentencia SELECT es cuando se recuperan todos los datos de una tabla: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas;&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie   | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| Fluffy | Arnoldo     | Gato      | f    | 1999-02-04 | NULL          |&lt;br /&gt;| Mau    | Juan        | Gato      | m    | 1998-03-17 | NULL          |&lt;br /&gt;| Buffy  | Arnoldo     | Perro     | f    | 1999-05-13 | NULL          |&lt;br /&gt;| FanFan | Benito      | Perro     | m    | 2000-08-27 | NULL          |&lt;br /&gt;| Kaiser | Diana       | Perro     | m    | 1998-08-31 | 1997-07-29    |&lt;br /&gt;| Chispa | Omar        | Ave       | f    | 1998-09-11 | NULL          |&lt;br /&gt;| Wicho  | Tomás       | Ave       | NULL | 2000-02-09 | NULL          |&lt;br /&gt;| Skim   | Benito      | Serpiente | m    | 2001-04-29 | NULL          |&lt;br /&gt;| Pelusa | Diana       | Hamster   | f    | 2000-03-30 | NULL          |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Esta forma del SELECT es útil si deseamos ver los datos completos de la tabla, por ejemplo, para asegurarnos de que están todos los registros después de la carga de un archivo. Por ejemplo, en este caso que estamos tratando, al consultar los registros de la tabla, nos damos cuenta de que hay un error en el archivo de datos (mascotas.txt): parece que Kaiser ha nacido después de que ha fallecido!. Al revisar un poco el pedigree de Kaiser encontramos que la fecha correcta de nacimiento es el año 1989, no 1998. Hay por lo menos un par de maneras de solucionar este problema: Editar el archivo "mascotas.txt" para corregir el error, eliminar los datos de la tabla mascotas con la sentencia DELETE, y cargar los datos nuevamente con el comando LOAD DATA: &lt;br /&gt;mysql&gt; DELETE FROM mascotas;&lt;br /&gt;mysql&gt; LOAD DATA LOCAL INFILE "mascotas.txt" INTO TABLE mascotas;&lt;br /&gt;&lt;br /&gt;Sin embargo, si hacemos esto, debemos ingresar los datos de Pelusa, la mascota de nuestra hermana Diana. La segunda opción consiste en corregir sólo el registro erróneo con una sentencia UPDATE: &lt;br /&gt;mysql&gt; UPDATE mascotas SET nacimiento="1989-08-31" WHERE nombre="Kaiser";&lt;br /&gt;&lt;br /&gt;Como se mostró anteriormente, es muy fácil recuperar los datos de una tabla completa. Pero típicamente no deseamos hacer esto, particularmente cuando las tablas son demasiado grandes. En vez de ello, estaremos más interesados en responder preguntas particulares, en cuyo caso debemos especificar algunas restricciones para la información que deseamos ver. &lt;br /&gt;Seleccionando registros particulares &lt;br /&gt;Podemos seleccionar sólo registros particulares de una tabla. Por ejemplo, si deseamos verificar el cambio que hicimos a la fecha de nacimiento de Kaiser, seleccionamos sólo el registro de Kaiser de la siguiente manera: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre="Kaiser";&lt;br /&gt;+--------+-------------+---------+------+------------+--------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimento |&lt;br /&gt;+--------+-------------+---------+------+------------+--------------+&lt;br /&gt;| Kaiser | Diana       | Perro   | m    | 1989-08-31 | 1997-07-29   |&lt;br /&gt;+--------+-------------+---------+------+------------+--------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;La salida mostrada confirma que el año ha sido corregido de 1998 a 1989. &lt;br /&gt;&lt;br /&gt;La comparación de cadenas es normalmente no sensitiva, así que podemos especificar el nombre como "kaiser", "KAISER", etc. El resultado de la consulta será el mismo. Podemos además especificar condiciones sobre cualquier columna, no sólo el "nombre". Por ejemplo, si deseamos conocer qué mascotas nacieron después del 2000, tendríamos que usar la columna "nacimiento": &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nacimiento &gt;= "2000-1-1";&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie   | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| FanFan | Benito      | Perro     | m    | 2000-08-27 | NULL          |&lt;br /&gt;| Wicho  | Tomás       | Ave       | NULL | 2000-02-09 | NULL          |&lt;br /&gt;| Skim   | Benito      | Serpiente | m    | 2001-04-29 | NULL          |&lt;br /&gt;| Pelusa | Diana       | Hamster   | f    | 2000-03-30 | NULL          |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;4 rows in set (0.00 sec)&lt;br /&gt;Podemos también combinar condiciones, por ejemplo, para localizar a los perros hembras: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE especie="Perro" AND sexo="f";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;La consulta anterior usa el operador lógico AND. Hay también un operador lógico OR: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE especie = "Ave" OR especie = "Gato";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Fluffy | Arnoldo     | Gato    | f    | 1999-02-04 | NULL          |&lt;br /&gt;| Mau    | Juan        | Gato    | m    | 1998-03-17 | NULL          |&lt;br /&gt;| Chispa | Omar        | Ave     | f    | 1998-09-11 | NULL          |&lt;br /&gt;| Wicho  | Tomás       | Ave     | NULL | 2000-02-09 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;4 rows in set (0.00 sec)&lt;br /&gt;El operador AND y el operador OR pueden ser intercambiados. Si hacemos esto, es buena idea usar paréntesis para indicar como deben ser agrupadas las condiciones: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE (especie = "Gato" AND sexo = "m")&lt;br /&gt;    -&gt; OR (especie = "Perro" AND sexo = "f");&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Mau    | Juan        | Gato    | m    | 1998-03-17 | NULL          |&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;2 rows in set (0.00 sec)&lt;br /&gt;Seleccionando columnas particulares &lt;br /&gt;Si no deseamos ver los registros completos de una tabla, entonces tenemos que usar los nombres de las columnas en las que estamos interesados separándolas por coma. Por ejemplo, si deseamos conocer la fecha de nacimiento de nuestras mascotas, debemos seleccionar la columna "nombre" y "nacimiento": &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento FROM mascotas;&lt;br /&gt;+--------+------------+&lt;br /&gt;| nombre | nacimiento |&lt;br /&gt;+--------+------------+&lt;br /&gt;| Fluffy | 1999-02-04 |&lt;br /&gt;| Mau    | 1998-03-17 |&lt;br /&gt;| Buffy  | 1999-05-13 |&lt;br /&gt;| FanFan | 2000-08-27 |&lt;br /&gt;| Kaiser | 1989-08-31 |&lt;br /&gt;| Chispa | 1998-09-11 |&lt;br /&gt;| Wicho  | 2000-02-09 |&lt;br /&gt;| Skim   | 2001-04-29 |&lt;br /&gt;| Pelusa | 2000-03-30 |&lt;br /&gt;+--------+------------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;Para conocer quién tiene alguna mascota, usaremos la siguiente consulta: &lt;br /&gt;mysql&gt; SELECT propietario FROM mascotas;&lt;br /&gt;+-------------+&lt;br /&gt;| propietario |&lt;br /&gt;+-------------+&lt;br /&gt;| Arnoldo     |&lt;br /&gt;| Juan        |&lt;br /&gt;| Arnoldo     |&lt;br /&gt;| Benito      |&lt;br /&gt;| Diana       |&lt;br /&gt;| Omar        |&lt;br /&gt;| Tomás       |&lt;br /&gt;| Benito      |&lt;br /&gt;| Diana       |&lt;br /&gt;+-------------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;Sin embargo, debemos notar que la consulta recupera el nombre del propietario de cada mascota, y algunos de ellos aparecen más de una vez. Para minimizar la salida, agregaremos la palabra clave DISTINCT: &lt;br /&gt;mysql&gt; SELECT DISTINCT propietario FROM mascotas;&lt;br /&gt;+-------------+&lt;br /&gt;| propietario |&lt;br /&gt;+-------------+&lt;br /&gt;| Arnoldo     |&lt;br /&gt;| Juan        |&lt;br /&gt;| Benito      |&lt;br /&gt;| Diana       |&lt;br /&gt;| Omar        |&lt;br /&gt;| Tomás       |&lt;br /&gt;+-------------+&lt;br /&gt;6 rows in set (0.03 sec)&lt;br /&gt;Se puede usar también una cláusula WHERE para combinar selección de filas con selección de columnas. Por ejemplo, para obtener la fecha de nacimiento de los perritos y los gatitos, usaremos la siguiente consulta: &lt;br /&gt;mysql&gt; SELECT nombre, especie, nacimiento FROM mascotas&lt;br /&gt;    -&gt; WHERE especie = "perro" OR especie = "gato";&lt;br /&gt;+--------+---------+------------+&lt;br /&gt;| nombre | especie | nacimiento |&lt;br /&gt;+--------+---------+------------+&lt;br /&gt;| Fluffy | Gato    | 1999-02-04 |&lt;br /&gt;| Mau    | Gato    | 1998-03-17 |&lt;br /&gt;| Buffy  | Perro   | 1999-05-13 |&lt;br /&gt;| FanFan | Perro   | 2000-08-27 |&lt;br /&gt;| Kaiser | Perro   | 1989-08-31 |&lt;br /&gt;+--------+---------+------------+&lt;br /&gt;5 rows in set (0.00 sec)&lt;br /&gt;Ordenando registros &lt;br /&gt;Se debe notar en los ejemplos anteriores que las filas regresadas son mostradas sin ningún orden en particular. Sin embargo, frecuentemente es más fácil examinar la salida de una consulta cuando las filas son ordenadas en alguna forma útil. Para ordenar los resultados, tenemos que usar una cláusula ORDER BY. Aquí aparecen algunos datos ordenados por fecha de nacimiento: &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento FROM mascotas ORDER BY nacimiento;&lt;br /&gt;+--------+------------+&lt;br /&gt;| nombre | nacimiento |&lt;br /&gt;+--------+------------+&lt;br /&gt;| Kaiser | 1989-08-31 |&lt;br /&gt;| Mau    | 1998-03-17 |&lt;br /&gt;| Chispa | 1998-09-11 |&lt;br /&gt;| Fluffy | 1999-02-04 |&lt;br /&gt;| Buffy  | 1999-05-13 |&lt;br /&gt;| Wicho  | 2000-02-09 |&lt;br /&gt;| Pelusa | 2000-03-30 |&lt;br /&gt;| FanFan | 2000-08-27 |&lt;br /&gt;| Skim   | 2001-04-29 |&lt;br /&gt;+--------+------------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;En las columnas de tipo caracter, el ordenamiento es ejecutado normalmente de forma no sensitiva, es decir, no hay diferencia entre mayúsculas y minúsculas. Sin embargo, se puede forzar un ordenamiento sensitivo al usar el operador BINARY. Para ordenar en orden inverso, debemos agregar la palabra clave DESC al nombre de la columna que estamos usando en el ordenamiento: &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento FROM mascotas ORDER BY &lt;br /&gt;    -&gt; nacimiento DESC;&lt;br /&gt;+--------+------------+&lt;br /&gt;| nombre | nacimiento |&lt;br /&gt;+--------+------------+&lt;br /&gt;| Skim   | 2001-04-29 |&lt;br /&gt;| FanFan | 2000-08-27 |&lt;br /&gt;| Pelusa | 2000-03-30 |&lt;br /&gt;| Wicho  | 2000-02-09 |&lt;br /&gt;| Buffy  | 1999-05-13 |&lt;br /&gt;| Fluffy | 1999-02-04 |&lt;br /&gt;| Chispa | 1998-09-11 |&lt;br /&gt;| Mau    | 1998-03-17 |&lt;br /&gt;| Kaiser | 1989-08-31 |&lt;br /&gt;+--------+------------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Podemos ordenar múltiples columnas. Por ejemplo, para ordenar por tipo de animal, y poner al inicio los animalitos más pequeños de edad, usaremos la siguiente consulta: &lt;br /&gt;mysql&gt; SELECT nombre, especie, nacimiento FROM mascotas&lt;br /&gt;    -&gt; ORDER BY especie, nacimiento DESC;&lt;br /&gt;+--------+-----------+------------+&lt;br /&gt;| nombre | especie   | nacimiento |&lt;br /&gt;+--------+-----------+------------+&lt;br /&gt;| Wicho  | Ave       | 2000-02-09 |&lt;br /&gt;| Chispa | Ave       | 1998-09-11 |&lt;br /&gt;| Fluffy | Gato      | 1999-02-04 |&lt;br /&gt;| Mau    | Gato      | 1998-03-17 |&lt;br /&gt;| Pelusa | Hamster   | 2000-03-30 |&lt;br /&gt;| FanFan | Perro     | 2000-08-27 |&lt;br /&gt;| Buffy  | Perro     | 1999-05-13 |&lt;br /&gt;| Kaiser | Perro     | 1989-08-31 |&lt;br /&gt;| Skim   | Serpiente | 2001-04-29 |&lt;br /&gt;+--------+-----------+------------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Notar que la palabra clave DESC aplica sólo a la columna nombrada que le precede&lt;br /&gt;Cálculos con fechas &lt;br /&gt;MySQL proporciona diversas funciones que se pueden usar para efectuar cálculos sobre fechas, por ejemplo, para calcular edades o extraer partes de una fecha (día, mes, año, etc.). Para determinar la edad de cada una de nuestras mascotas, tenemos que calcular la diferencia de años de la fecha actual y la fecha de nacimiento, y entonces substraer uno si la fecha actual ocurre antes en el calendario que la fecha de nacimiento. Las siguientes consultas muestran la fecha actual, la fecha de nacimiento y la edad para cada mascota. &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento, CURRENT_DATE,&lt;br /&gt;    -&gt; (YEAR(CURRENT_DATE) - YEAR(nacimiento)) &lt;br /&gt;    -&gt; - (RIGHT(CURRENT_DATE,5) &lt; RIGHT(nacimiento,5)) AS edad FROM mascotas;&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;| nombre | nacimiento | CURRENT_DATE | edad |&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;| Fluffy | 1999-02-04 | 2002-12-23   |    3 |&lt;br /&gt;| Mau    | 1998-03-17 | 2002-12-23   |    4 |&lt;br /&gt;| Buffy  | 1999-05-13 | 2002-12-23   |    3 |&lt;br /&gt;| FanFan | 2000-08-27 | 2002-12-23   |    2 |&lt;br /&gt;| Kaiser | 1989-08-31 | 2002-12-23   |   13 |&lt;br /&gt;| Chispa | 1998-09-11 | 2002-12-23   |    4 |&lt;br /&gt;| Wicho  | 2000-02-09 | 2002-12-23   |    2 |&lt;br /&gt;| Skim   | 2001-04-29 | 2002-12-23   |    1 |&lt;br /&gt;| Pelusa | 2000-03-30 | 2002-12-23   |    2 |&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;9 rows in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;Aquí, YEAR( ) obtiene únicamente el año y RIGHT( ) obtiene los cinco caracteres más a la derecha de cada una de las fechas, que representan el mes y el día (MM-DD). La parte de la expresión que compara los valores MM-DD se evalúa a 1 o 0, y permite ajustar el valor de la edad en el caso de que el valor MM-DD de la fecha actual ocurra antes del valor MM-DD de la fecha de nacimiento. Dado que la expresión en sí es bastante fea, se ha usado un alias (edad) que es el que aparece como etiqueta en la columna que muestra el resultado de la consulta. Esta consulta debe trabajar bien, pero el resultado puede ser de alguna manera más útil si las filas son presentadas en algún orden. Para ello haremos uso de la cláusula ORDER BY. Por ejemplo, para ordenar por nombre, usaremos la siguiente consulta: &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento, CURRENT_DATE,&lt;br /&gt;    -&gt; (YEAR(CURRENT_DATE) - YEAR(nacimiento)) &lt;br /&gt;    -&gt; - (RIGHT(CURRENT_DATE,5) &lt; RIGHT(nacimiento,5))&lt;br /&gt;    -&gt; AS edad FROM mascotas ORDER BY nombre;&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;| nombre | nacimiento | CURRENT_DATE | edad |&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;| Buffy  | 1999-05-13 | 2002-12-23   |    3 |&lt;br /&gt;| Chispa | 1998-09-11 | 2002-12-23   |    4 |&lt;br /&gt;| FanFan | 2000-08-27 | 2002-12-23   |    2 |&lt;br /&gt;| Fluffy | 1999-02-04 | 2002-12-23   |    3 |&lt;br /&gt;| Kaiser | 1989-08-31 | 2002-12-23   |   13 |&lt;br /&gt;| Mau    | 1998-03-17 | 2002-12-23   |    4 |&lt;br /&gt;| Pelusa | 2000-03-30 | 2002-12-23   |    2 |&lt;br /&gt;| Skim   | 2001-04-29 | 2002-12-23   |    1 |&lt;br /&gt;| Wicho  | 2000-02-09 | 2002-12-23   |    2 |&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;Para ordenar por edad en lugar de nombre, únicamente tenemos que usar una cláusula ORDER BY diferente: &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento, CURRENT_DATE,&lt;br /&gt;    -&gt; (YEAR(CURRENT_DATE) - YEAR(nacimiento)) &lt;br /&gt;    -&gt; - (RIGHT(CURRENT_DATE,5) &lt; RIGHT(nacimiento,5))&lt;br /&gt;    -&gt; AS edad FROM mascotas ORDER BY edad;&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;| nombre | nacimiento | CURRENT_DATE | edad |&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;| Skim   | 2001-04-29 | 2002-12-23   |    1 |&lt;br /&gt;| FanFan | 2000-08-27 | 2002-12-23   |    2 |&lt;br /&gt;| Wicho  | 2000-02-09 | 2002-12-23   |    2 |&lt;br /&gt;| Pelusa | 2000-03-30 | 2002-12-23   |    2 |&lt;br /&gt;| Fluffy | 1999-02-04 | 2002-12-23   |    3 |&lt;br /&gt;| Buffy  | 1999-05-13 | 2002-12-23   |    3 |&lt;br /&gt;| Mau    | 1998-03-17 | 2002-12-23   |    4 |&lt;br /&gt;| Chispa | 1998-09-11 | 2002-12-23   |    4 |&lt;br /&gt;| Kaiser | 1989-08-31 | 2002-12-23   |   13 |&lt;br /&gt;+--------+------------+--------------+------+&lt;br /&gt;9 rows in set (0.01 sec)&lt;br /&gt;Una consulta similar puede ser usada para determinar la edad que tenía una mascota cuando falleció. Para determinar que animalitos ya fallecieron, la condición es que el valor en el campo fallecimiento no sea nulo (NULL). Entonces, para los registros con valor no-nulo, calculamos la diferencia entre los valores fallecimiento y nacimiento. &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento, fallecimiento,&lt;br /&gt;    -&gt; (YEAR(fallecimiento) - YEAR(nacimiento)) &lt;br /&gt;    -&gt; - (RIGHT(fallecimiento,5) &lt; RIGHT(nacimiento,5))&lt;br /&gt;    -&gt; AS edad FROM mascotas WHERE fallecimiento IS NOT NULL;&lt;br /&gt;+--------+------------+---------------+------+&lt;br /&gt;| nombre | nacimiento | fallecimiento | edad |&lt;br /&gt;+--------+------------+---------------+------+&lt;br /&gt;| Kaiser | 1989-08-31 | 1997-07-29    |    7 |&lt;br /&gt;+--------+------------+---------------+------+&lt;br /&gt;1 row in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;La consulta usa fallecimiento IS NOT NULL, en vez de fallecimiento &lt; &gt; NULL porque NULL es una valor especial. Esto será explicando más a detalle posteriormente. ¿Qué sucede si deseamos conocer cuáles de nuestras mascotas cumplen años el próximo mes? Para este tipo de cálculos, el año y el día son irrelevantes; simplemente tenemos que extraer el valor del mes en la columna nacimiento. Como se mencionó anteriormente, MySQL proporciona diversas funciones para trabajar y manipular fechas, en este caso haremos uso de la función MONTH( ). Para ver como trabaja, vamos a ejecutar una consulta muy simple que muestra tanto el valor de una fecha como el valor que regresa la función MONTH( ). &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento, MONTH(nacimiento) FROM mascotas;&lt;br /&gt;+--------+------------+-------------------+&lt;br /&gt;| nombre | nacimiento | MONTH(nacimiento) |&lt;br /&gt;+--------+------------+-------------------+&lt;br /&gt;| Fluffy | 1999-02-04 |                 2 |&lt;br /&gt;| Mau    | 1998-03-17 |                 3 |&lt;br /&gt;| Buffy  | 1999-05-13 |                 5 |&lt;br /&gt;| FanFan | 2000-08-27 |                 8 |&lt;br /&gt;| Kaiser | 1989-08-31 |                 8 |&lt;br /&gt;| Chispa | 1998-09-11 |                 9 |&lt;br /&gt;| Wicho  | 2000-02-09 |                 2 |&lt;br /&gt;| Skim   | 2001-04-29 |                 4 |&lt;br /&gt;| Pelusa | 2000-03-30 |                 3 |&lt;br /&gt;+--------+------------+-------------------+&lt;br /&gt;9 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Encontrar los animalitos cuyo cumpleaños es el próximo mes es muy sencillo. Suponiendo que el mes actual es Abril (valor 4), entonces tenemos que buscar los registros cuyo valor de mes sea 5 (Mayo). &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento FROM mascotas WHERE MONTH(nacimiento) = 5;&lt;br /&gt;+--------+------------+&lt;br /&gt;| nombre | nacimiento |&lt;br /&gt;+--------+------------+&lt;br /&gt;| Buffy  | 1999-05-13 |&lt;br /&gt;+--------+------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Aquí habrá por supuesto una complicación si el mes actual es Diciembre. No podemos simplemente agregar uno al número del mes (12) y buscar los registros cuyo mes de nacimiento sea 13 porque dicho mes no existe. En vez de esto, tenemos que buscar los animalitos que nacieron en Enero (mes 1). Sin embargo, lo mejor es que podemos escribir una consulta que funcione no importando cuál sea el mes actual. La función DATE_ADD( ) nos permite agregar un intervalo de tiempo a una fecha dada. Si agregamos un mes al valor regresado por la función NOW( ), y entonces extraemos el valor del mes con la función MONTH( ), el resultado es que siempre obtendremos el mes siguiente. La consulta que resuelve nuestro problema queda así: &lt;br /&gt;mysql&gt; SELECT nombre, nacimiento FROM mascotas &lt;br /&gt;    -&gt; WHERE MONTH(nacimiento) = MONTH(DATE_ADD(NOW(), INTERVAL 1 MONTH));&lt;br /&gt;Trabajando con valores nulos &lt;br /&gt;El valor NULL puede sorprendernos mientras no hayamos trabajado con él. Conceptualmente, NULL significa un valor que hace falta, o un valor desconocido, y es tratado de una manera diferente a otros valores. Para verificar si un valor es NULL no podemos usar los operadores de comparación tales como =, &gt; , o &lt; . Para probar esto ejecutemos la siguiente consulta: &lt;br /&gt;mysql&gt; SELECT 1 = NULL, 1 &lt;&gt; NULL, 1 &lt; NULL, 1 &gt; NULL;&lt;br /&gt;+----------+-----------+----------+----------+&lt;br /&gt;| 1 = NULL | 1 &lt;&gt; NULL | 1 &lt; NULL | 1 &gt; NULL |&lt;br /&gt;+----------+-----------+----------+----------+&lt;br /&gt;|     NULL |      NULL |     NULL |     NULL |&lt;br /&gt;+----------+-----------+----------+----------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Claramente observamos que no obtenemos resultados con algún significado con estos operadores. Es por ello que tenemos que usar los operadores IS NULL e IS NOT NULL: &lt;br /&gt;mysql&gt; SELECT 1 IS NULL, 1 IS NOT NULL;&lt;br /&gt;+-----------+---------------+&lt;br /&gt;| 1 IS NULL | 1 IS NOT NULL |&lt;br /&gt;+-----------+---------------+&lt;br /&gt;|         0 |             1 |&lt;br /&gt;+-----------+---------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;En MySQL, 0 o NULL significan falso y cualquier otro valor significa verdadero. El valor que se considera verdadero por default es 1. Cuando se usa un ORDER BY, los valores NULL son siempre ordenados primero, aún cuando se use la cláusula DESC.&lt;br /&gt;Coincidencia de patrones &lt;br /&gt;MySQL proporciona métodos de coincidencia de patrones basados en SQL estándar, así como también basados en expresiones regulares, de manera similar a las utilerías de Unix tales como vi, grep y sed. La coincidencia de patrones basada en SQL nos permite usar _ (guión bajo) para un solo caracter y % para un arbitrario número de caracteres. En MySQL, los patrones SQL no son sensibles al uso de mayúsculas y minúsculas. Es importante notar que no se usan los operadores = o &lt; &gt; cuando se usan los patrones SQL; en su lugar se usan los operadores LIKE y NOT LIKE. A continuación se presentan algunos ejemplos. Para encontrar los nombres que comienzan con b: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre LIKE "b%";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Para encontrar los nombres que finalizan con fy: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre LIKE "%fy";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Fluffy | Arnoldo     | Gato    | f    | 1999-02-04 | NULL          |&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;2 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Para encontrar nombres que contienen una s: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre LIKE "%s%";&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie   | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| Kaiser | Diana       | Perro     | m    | 1989-08-31 | 1997-07-29    |&lt;br /&gt;| Chispa | Omar        | Ave       | f    | 1998-09-11 | NULL          |&lt;br /&gt;| Skim   | Benito      | Serpiente | m    | 2001-04-29 | NULL          |&lt;br /&gt;| Pelusa | Diana       | Hamster   | f    | 2000-03-30 | NULL          |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;4 rows in set (0.01 sec)&lt;br /&gt;El otro tipo de coincidencia de patrones proporcionado por MySQL hace uso de expresiones regulares. Para hacer uso de estos tipos de patrones se tienen que usar los operadores REGEXP y NOT REGEXP ( o RLIKE y NOT RLIKE, los cuáles son sinónimos). Algunas características de las expresiones regulares son: &lt;br /&gt;El caracter punto ( . ) coincide con cualquier caracter. &lt;br /&gt;Una clase de caracteres [...] coincide con cualquier caracter dentro de los paréntesis cuadrados. Por ejemplo, [abc] coincide con a, b o c. Para nombrar un rango de caracteres, se usa el guión. [a-z] coincide con cualquier letra minúscula, mientras que [0-9] coincide con cualquier dígito. &lt;br /&gt;El caracter asterisco ( * ) coincide con cero o más instancias de lo que le preceda. Por ejemplo, x* coincide con cualquier número de caracteres x, [0-9]* coincide con cualquier número de digitos, y .* (punto asterisco) coincide con cualquier cosa. &lt;br /&gt;El patrón coincide si éste ocurre en cualquier parte del valor que está siendo evaluado. (Los patrones SQL coinciden únicamente en los valores completos.) &lt;br /&gt;Para indicar el inicio o el final de un valor que está siendo evaluado se usan los caracteres ^ y $ respectivamente. &lt;br /&gt;Para demostrar como se usan las expresiones regulares, se van a mostrar los ejemplos presentados anteriormente con el operador LIKE, ahora con el operador REGEXP. &lt;br /&gt;Para encontrar los nombre que inician con b: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre REGEXP "^b";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;1 row in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;Antes de la versión 3.23.4 de MySQL, el operador REGEXP era sensible al uso de mayúsculas y minúsculas, así que dependiendo de la versión de MySQL con la que se está trabajando puede que obtengamos o no algún resultado en la consulta anterior. Se puede usar también la siguiente consulta para buscar los nombres que inician con la letra b, no importando si es mayúscula o minúscula. &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre REGEXP "^[bB]";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Desde la versión 3.23.4, para forzar que el operador REGEXP sea sensible al uso de mayúsculas y minúsculas, se tiene que usar la palabra clave BINARY para hacer de una de las cadenas, una cadena binaria. Observar los resultados de la siguientes consultas. &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre REGEXP BINARY "^b";&lt;br /&gt;Empty set (0.00 sec)&lt;br /&gt;&lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre REGEXP BINARY "^B";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;1 row in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;Para encontrar los nombres que finalizan con la palabra fy, haremos uso del caracter $. &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre  REGEXP "fy$";&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;| Fluffy | Arnoldo     | Gato    | f    | 1999-02-04 | NULL          |&lt;br /&gt;| Buffy  | Arnoldo     | Perro   | f    | 1999-05-13 | NULL          |&lt;br /&gt;+--------+-------------+---------+------+------------+---------------+&lt;br /&gt;2 rows in set (0.00 sec)&lt;br /&gt;Para encontrar los nombres que contienen una letra s, la consulta sería: &lt;br /&gt;mysql&gt; SELECT * FROM mascotas WHERE nombre  REGEXP "s";&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| nombre | propietario | especie   | sexo | nacimiento | fallecimiento |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;| Kaiser | Diana       | Perro     | m    | 1989-08-31 | 1997-07-29    |&lt;br /&gt;| Chispa | Omar        | Ave       | f    | 1998-09-11 | NULL          |&lt;br /&gt;| Skim   | Benito      | Serpiente | m    | 2001-04-29 | NULL          |&lt;br /&gt;| Pelusa | Diana       | Hamster   | f    | 2000-03-30 | NULL          |&lt;br /&gt;+--------+-------------+-----------+------+------------+---------------+&lt;br /&gt;4 rows in set (0.00 sec)&lt;br /&gt;Conteo de filas &lt;br /&gt;Las bases de datos son usadas frecuentemente para responder una pregunta, "¿Con qué frecuencia ocurre un cierto tipo de dato en una tabla?". Por ejemplo, tal vez queremos conocer cuántas mascotas tenemos, o cuántas mascotas tiene cada uno de los propietarios. Contar el número total de animalitos que tenemos es lo mismo que hacer la siguiente pregunta "¿Cuántas filas hay en la tabla mascotas?" ya que hay un registro por mascota. La función COUNT( ) es la que nos ayuda en esta situación. &lt;br /&gt;mysql&gt; SELECT COUNT(*) FROM mascotas;&lt;br /&gt;+----------+&lt;br /&gt;| COUNT(*) |&lt;br /&gt;+----------+&lt;br /&gt;|        9 |&lt;br /&gt;+----------+&lt;br /&gt;1 row in set (0.00 sec)&lt;br /&gt;Si deseamos conocer cuántas mascotas tiene cada uno de los propietarios, la consulta es la siguiente: &lt;br /&gt;mysql&gt; SELECT propietario, COUNT(*) FROM mascotas GROUP BY propietario ;&lt;br /&gt;+-------------+----------+&lt;br /&gt;| propietario | COUNT(*) |&lt;br /&gt;+-------------+----------+&lt;br /&gt;| Arnoldo     |        2 |&lt;br /&gt;| Benito      |        2 |&lt;br /&gt;| Diana       |        2 |&lt;br /&gt;| Juan        |        1 |&lt;br /&gt;| Omar        |        1 |&lt;br /&gt;| Tomás       |        1 |&lt;br /&gt;+-------------+----------+&lt;br /&gt;6 rows in set (0.00 sec)&lt;br /&gt;Se debe notar que se ha usado una cláusula GROUP BY para agrupar todos los registros de cada propietario. Si no hacemos esto, obtendremos un mensaje de error: &lt;br /&gt;mysql&gt; SELECT propietario, COUNT(*) FROM mascotas;    &lt;br /&gt;ERROR 1140: Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no &lt;br /&gt;GROUP columns is illegal if there is no GROUP BY clause&lt;br /&gt;&lt;br /&gt;En efecto, el uso de la función COUNT( ) en conjunto con la cláusula GROUP BY es muy útil en diversas situaciones. A continuación se muestran algunos ejemplos. El número de animalitos por especie: &lt;br /&gt;mysql&gt; SELECT especie, COUNT(*) FROM mascotas GROUP BY especie ;&lt;br /&gt;+-----------+----------+&lt;br /&gt;| especie   | COUNT(*) |&lt;br /&gt;+-----------+----------+&lt;br /&gt;| Ave       |        2 |&lt;br /&gt;| Gato      |        2 |&lt;br /&gt;| Hamster   |        1 |&lt;br /&gt;| Perro     |        3 |&lt;br /&gt;| Serpiente |        1 |&lt;br /&gt;+-----------+----------+&lt;br /&gt;5 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;El número de animalitos por sexo: &lt;br /&gt;mysql&gt; SELECT sexo, COUNT(*) FROM mascotas GROUP BY sexo:&lt;br /&gt;+------+----------+&lt;br /&gt;| sexo | COUNT(*) |&lt;br /&gt;+------+----------+&lt;br /&gt;| NULL |        1 |&lt;br /&gt;| f    |        4 |&lt;br /&gt;| m    |        4 |&lt;br /&gt;+------+----------+&lt;br /&gt;3 rows in set (0.01 sec)&lt;br /&gt;&lt;br /&gt;El número de animalitos por combinación de especie y sexo: &lt;br /&gt;mysql&gt; SELECT especie, sexo, COUNT(*) FROM mascotas GROUP BY especie, sexo ;&lt;br /&gt;+-----------+------+----------+&lt;br /&gt;| especie   | sexo | COUNT(*) |&lt;br /&gt;+-----------+------+----------+&lt;br /&gt;| Ave       | NULL |        1 |&lt;br /&gt;| Ave       | f    |        1 |&lt;br /&gt;| Gato      | f    |        1 |&lt;br /&gt;| Gato      | m    |        1 |&lt;br /&gt;| Hamster   | f    |        1 |&lt;br /&gt;| Perro     | f    |        1 |&lt;br /&gt;| Perro     | m    |        2 |&lt;br /&gt;| Serpiente | m    |        1 |&lt;br /&gt;+-----------+------+----------+&lt;br /&gt;8 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;No es necesario que se obtengan todos los datos de una tabla cuando se usa la función COUNT( ). Por ejemplo, en la consulta anterior, para ver únicamente los datos de perritos y gatitos, la consulta queda de la siguiente manera: &lt;br /&gt;mysql&gt; SELECT especie, sexo, COUNT(*) FROM mascotas&lt;br /&gt;    -&gt; WHERE especie="Perro" OR especie="Gato" &lt;br /&gt;    -&gt; GROUP BY especie, sexo;&lt;br /&gt;+---------+------+----------+&lt;br /&gt;| especie | sexo | COUNT(*) |&lt;br /&gt;+---------+------+----------+&lt;br /&gt;| Gato    | f    |        1 |&lt;br /&gt;| Gato    | m    |        1 |&lt;br /&gt;| Perro   | f    |        1 |&lt;br /&gt;| Perro   | m    |        2 |&lt;br /&gt;+---------+------+----------+&lt;br /&gt;4 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;O bien, si deseamos el número de animalitos por sexo, y cuyo sexo es conocido: &lt;br /&gt;mysql&gt; SELECT especie, sexo, COUNT(*) FROM mascotas&lt;br /&gt;    -&gt; WHERE sexo IS NOT NULL&lt;br /&gt;    -&gt; GROUP BY especie, sexo ;&lt;br /&gt;+-----------+------+----------+&lt;br /&gt;| especie   | sexo | COUNT(*) |&lt;br /&gt;+-----------+------+----------+&lt;br /&gt;| Ave       | f    |        1 |&lt;br /&gt;| Gato      | f    |        1 |&lt;br /&gt;| Gato      | m    |        1 |&lt;br /&gt;| Hamster   | f    |        1 |&lt;br /&gt;| Perro     | f    |        1 |&lt;br /&gt;| Perro     | m    |        2 |&lt;br /&gt;| Serpiente | m    |        1 |&lt;br /&gt;+-----------+------+----------+&lt;br /&gt;7 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Usando más de una tabla &lt;br /&gt;La tabla mascotas nos ha servido hasta este momento para tener guardados los datos acerca de los animalitos que tenemos. Si deseamos guardar algún otro tipo de información acerca de ellos, tal como los eventos en sus vidas -visitas al veterinario, nacimientos de una camada, etc- necesitaremos de otra tabla. ¿Cómo deberá estar conformada esta tabla?. Lo que necesitamos es: &lt;br /&gt;El nombre de la mascota para saber a cuál de ellas se refiere el evento. &lt;br /&gt;Una fecha para saber cuando ocurrió el evento. &lt;br /&gt;Una descripción del evento. &lt;br /&gt;Un campo que indique el tipo de evento, si deseamos categorizarlos. &lt;br /&gt;Dadas estas condiciones, la sentencia para crear la tabla eventos queda de la siguiente manera: &lt;br /&gt;mysql&gt; CREATE TABLE eventos(nombre varchar(20), fecha date,&lt;br /&gt;    -&gt; tipo varchar(15), descripcion varchar(255));&lt;br /&gt;Query OK, 0 rows affected (0.03 sec)&lt;br /&gt;&lt;br /&gt;De manera similar a la tabla mascotas, es más fácil cargar los datos de los registros iniciales al crear un archivo de texto delimitado por tabuladores en el que se tenga la siguiente información: &lt;br /&gt;nombre &lt;br /&gt;fecha &lt;br /&gt;tipo &lt;br /&gt;descripción&lt;br /&gt;Fluffy &lt;br /&gt;2001-05-15 &lt;br /&gt;camada &lt;br /&gt;4 gatitos, 3 hembras, 1 macho&lt;br /&gt;Buffy &lt;br /&gt;2001-06-23 &lt;br /&gt;camada &lt;br /&gt;5 perritos, 2 hembras, 3 machos&lt;br /&gt;Buffy &lt;br /&gt;2002-06-19 &lt;br /&gt;camada &lt;br /&gt;2 perritos, 1 hembra, 1 macho&lt;br /&gt;Chispa &lt;br /&gt;2000-03-21 &lt;br /&gt;veterinario &lt;br /&gt;Una pata lastimada&lt;br /&gt;FanFan &lt;br /&gt;2001-08-27 &lt;br /&gt;cumpleaños &lt;br /&gt;Primera vez que se enfermo de la panza&lt;br /&gt;FanFan &lt;br /&gt;2002-08-03 &lt;br /&gt;veterinario &lt;br /&gt;Dolor de panza&lt;br /&gt;Whicho &lt;br /&gt;2001-02-09 &lt;br /&gt;cumpleaños &lt;br /&gt;Remodelación de casa&lt;br /&gt;El archivo eventos.txt Cargamos los datos en este archivo con la siguiente sentencia: &lt;br /&gt;mysql&gt; LOAD DATA LOCAL INFILE "eventos.txt" INTO TABLE eventos;&lt;br /&gt;Query OK, 7 rows affected (0.02 sec)&lt;br /&gt;Records: 7  Deleted: 0  Skipped: 0  Warnings: 0&lt;br /&gt;&lt;br /&gt;Tomando en cuenta lo que hemos aprendido en la ejecución de consultas sobre la tabla mascotas, debemos de ser capaces de recuperar algunos datos de la tabla eventos; los principios son los mismos. Sin embargo puede suceder que la tabla eventos por sí misma sea insuficiente para darnos las respuestas que necesitamos.&lt;br /&gt;Supongamos que deseemos conocer la edad de cada mascota cuando tuvieron una camada. La tabla eventos indica cuando ocurrió dicho evento, pero para calcular la edad de la madre, necesitamos sin duda su fecha de nacimiento. Dado que este dato está almacenado en la tabla mascotas, necesitamos de ambas tablas para realizar esta consulta. &lt;br /&gt;mysql&gt; SELECT mascotas.nombre,&lt;br /&gt;    -&gt; (TO_DAYS(fecha) - TO_DAYS(nacimiento))/365 AS edad,&lt;br /&gt;    -&gt; descripcion FROM mascotas, eventos&lt;br /&gt;    -&gt; WHERE mascotas.nombre=eventos.nombre &lt;br /&gt;    -&gt; AND tipo='camada';&lt;br /&gt;+--------+------+---------------------------------+&lt;br /&gt;| nombre | edad | descripcion                     |&lt;br /&gt;+--------+------+---------------------------------+&lt;br /&gt;| Fluffy | 2.28 | 4 gatitos, 3 hembras, 1 macho   |&lt;br /&gt;| Buffy  | 2.12 | 5 perritos, 2 hembras, 3 machos |&lt;br /&gt;| Buffy  | 3.10 | 2 perritos, 1 hembra, 1 macho   |&lt;br /&gt;+--------+------+---------------------------------+&lt;br /&gt;3 rows in set (0.05 sec)&lt;br /&gt;&lt;br /&gt;Hay diversas cosas que notar acerca de esta consulta: &lt;br /&gt;La cláusula FROM lista dos tablas dado que la consulta necesita información que se encuentra en ambas tablas. &lt;br /&gt;Cuando se combina (junta) información de múltiples tablas, es necesario especificar los registros de una tabla que pueden coincidir con los registros en la otra tabla. En nuestro caso, ambas columnas tienen una columna "nombre". La consulta usa la cláusula WHERE para obtener los registros cuyo valor en dicha columna es el mismo en ambas tablas. &lt;br /&gt;Dado que la columna "nombre" ocurre en ambas tablas, debemos de especificar a cuál de las columnas nos referimos. Esto se hace al anteponer el nombre de la tabla al nombre de la columna. &lt;br /&gt;Nota: La función TO_DAYS( ) regresa el número de días transcurridos desde el año 0 hasta la fecha dada. No es necesario que se tengan dos tablas diferentes para que se puedan juntar. Algunas veces es útil juntar una tabla consigo misma si se desean comparar registros de la misma tabla. Por ejemplo, para encontrar las posibles parejas entre nuestras mascotas de acuerdo a la especie, la consulta sería la siguiente: &lt;br /&gt;mysql&gt; SELECT m1.nombre, m1.sexo, m2.nombre, m2.sexo, m1.especie&lt;br /&gt;    -&gt; FROM mascotas AS m1, mascotas AS m2&lt;br /&gt;    -&gt; WHERE m1.especie=m2.especie AND m1.sexo="f" AND m2.sexo="m";&lt;br /&gt;+--------+------+--------+------+---------+&lt;br /&gt;| nombre | sexo | nombre | sexo | especie |&lt;br /&gt;+--------+------+--------+------+---------+&lt;br /&gt;| Fluffy | f    | Mau    | m    | Gato    |&lt;br /&gt;| Buffy  | f    | FanFan | m    | Perro   |&lt;br /&gt;| Buffy  | f    | Kaiser | m    | Perro   |&lt;br /&gt;+--------+------+--------+------+---------+&lt;br /&gt;3 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;En esta consulta se ha especificado un alias para el nombre de la tabla, y es éste el que se utiliza para referirse a las columnas. &lt;br /&gt;Usando mysql en modo batch &lt;br /&gt;En todos los ejemplos mostrados anteriormente, hemos usado mysql de manera interactiva para ejecutar algunas consultas y ver los resultados. Sin embargo, es posible usar mysql en modo batch. Para hacer esto tenemos que poner los comandos que deseamos ejecutar dentro de un archivo, y entonces decirle a mysql que lea los comandos de dicho archivo: &lt;br /&gt;shell&gt;  mysql &lt; archivo-batch&lt;br /&gt;&lt;br /&gt;Si se usa mysql de esta manera, se está creando un pequeño script, y posteriormente se está ejecutando dicho script. Al ejecutar las sentencias y comandos que se encuentran en el script, es posible que suceda algún error. Si se desea que se continúen ejecutando las demás sentencias, a pesar de que haya ocurrido un error, se tiene que usar la opción --force &lt;br /&gt;shell&gt;  mysql --force &lt; archivo-batch&lt;br /&gt;&lt;br /&gt;Así mismo, es posible especificar los parámetros de conexión desde la línea de comandos. Por ejemplo: &lt;br /&gt;shell&gt;  mysql -h casita -u blueman -p &lt; archivo-batch&lt;br /&gt;&lt;br /&gt;¿Por qué usar un script? Aquí hay algunas cuantas razones: - Si se ejecutan un cierto número de consultas frecuentemente (cada día, o cada semana), al hacer un script nos evitamos tener que volver a teclear cada una de las consultas. - Se pueden generar nuevas consultas que sean similares a las existentes al copiar y editar estos scripts. - Al escribir consultas de varias líneas, los scripts ayudan bastante para que no se tengan que escribir todas las líneas nuevamente si se comete algún error. - Si se están ejecutando consultas que producen una gran cantidad de datos, es posible usar un paginador para examinar los resultados de una mejor manera. &lt;br /&gt;shell&gt;  mysql &lt; archivo-batch | less&lt;br /&gt;&lt;br /&gt;- Se puede guardar la salida en un archivo para revisarla posteriormente. &lt;br /&gt;shell&gt;  mysql &lt; archivo-batch &gt; salida-del-script.txt&lt;br /&gt;&lt;br /&gt;Se pueden distribuir los scripts a otras personas para que puedan ejecutar también nuestros comandos y sentencias. - En algunas situaciones no se permite el uso interactivo de mysql. Por ejemplo cuando se ejecuta un cron. En este caso, es indispensable usar el modo batch.&lt;br /&gt;Cabe mencionar que el formato de la salida es diferente (más conciso) cuando se ejecuta mysql en modo batch, que cuando se usa de manera interactiva. Ver el siguiente ejemplo. La consulta es: SELECT DISTINCT especie FROM mascotas. Si se ejecuta en modo interactivo: &lt;br /&gt;mysql&gt; SELECT DISTINCT especie FROM mascotas;&lt;br /&gt;+-----------+&lt;br /&gt;| especie   |&lt;br /&gt;+-----------+&lt;br /&gt;| Gato      |&lt;br /&gt;| Perro     |&lt;br /&gt;| Ave       |&lt;br /&gt;| Serpiente |&lt;br /&gt;+-----------+&lt;br /&gt;4 rows in set (0.00 sec)&lt;br /&gt;&lt;br /&gt;Si se ejecuta en modo batch: &lt;br /&gt;shell&gt;  mysql -h casita -u blueman -p &lt; especies-distintas.sql &lt;br /&gt;Enter password: ******&lt;br /&gt;especie&lt;br /&gt;Gato&lt;br /&gt;Perro&lt;br /&gt;Ave&lt;br /&gt;Serpiente&lt;br /&gt;&lt;br /&gt;Si se desea obtener la salida que proporciona el modo interactivo, se tiene que usar la opción -t. &lt;br /&gt;shell&gt;  mysql -t -h casita -u blueman -p &lt; especies-distintas.sql &lt;br /&gt;Enter password: ******&lt;br /&gt;+-----------+&lt;br /&gt;| especie   |&lt;br /&gt;+-----------+&lt;br /&gt;| Gato      |&lt;br /&gt;| Perro     |&lt;br /&gt;| Ave       |&lt;br /&gt;| Serpiente |&lt;br /&gt;+-----------+&lt;br /&gt;&lt;br /&gt;El archivo especies-distintas.sql&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-3875611580526764858?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3875611580526764858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3875611580526764858'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/blog-post.html' title='TUTORIAL DE MySQL.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-1310994374797594440</id><published>2007-10-20T20:29:00.000-05:00</published><updated>2007-10-20T20:30:16.598-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN JAVA'/><title type='text'>PROGRAMA QUE CALCULA EL NUMERO MAYOR DE 3 NUMEROS INTRODUCIDOS, USANDO METODOS DE JAVA.</title><content type='html'>import java.awt.Container;&lt;br /&gt;import javax.swing.*;&lt;br /&gt;public class  Prueba2 extends JApplet&lt;br /&gt;{&lt;br /&gt;    public void init()&lt;br /&gt;    {&lt;br /&gt;        String s1=JOptionPane.showInputDialog("&lt;&lt; Escribe el primer valor &gt;&gt;:");&lt;br /&gt;        String s2=JOptionPane.showInputDialog("&lt;&lt; Escribe el segundo valor &gt;&gt;:");&lt;br /&gt;        String s3=JOptionPane.showInputDialog("&lt;&lt; Escriba el tercer valor&gt; &gt;:");&lt;br /&gt;        double numero1=Double.parseDouble(s1);&lt;br /&gt;        double numero2=Double.parseDouble(s2);&lt;br /&gt;        double numero3=Double.parseDouble(s3);&lt;br /&gt;        double max=prueba1 (numero1,numero2,numero3);&lt;br /&gt;        JTextArea areaSalida=new JTextArea();&lt;br /&gt;        areaSalida.setText("numero1==&gt;:"+numero1+"\nnumero2:==&gt;"+numero2+"\nnumero3:==&gt;"+numero3+"\nel valor maximo es:==&gt;"+max);&lt;br /&gt;        Container contenedor= getContentPane ();&lt;br /&gt;      contenedor.add (areaSalida);&lt;br /&gt;    }&lt;br /&gt;    public double prueba1(double x,double y, double z)&lt;br /&gt;    {&lt;br /&gt;        return Math.max(x,Math.max(y,z));&lt;br /&gt;    }&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-1310994374797594440?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1310994374797594440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1310994374797594440'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/programa-que-calcula-el-numero-mayor-de.html' title='PROGRAMA QUE CALCULA EL NUMERO MAYOR DE 3 NUMEROS INTRODUCIDOS, USANDO METODOS DE JAVA.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6413567789410130848</id><published>2007-10-20T20:20:00.000-05:00</published><updated>2007-10-20T20:24:44.139-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN JAVA'/><title type='text'>MENU QUE MUESTRA 3 FIGURAS.</title><content type='html'>import java.awt.Graphics;&lt;br /&gt;import javax.swing.*;&lt;br /&gt;public class PruebaMenu extends JApplet &lt;br /&gt;{&lt;br /&gt;    int opcion;&lt;br /&gt;   &lt;br /&gt;    public void init()&lt;br /&gt;    {&lt;br /&gt;        String entrada;&lt;br /&gt;        entrada=JOptionPane.showInputDialog("ESCRIBE 1 PARA DIBUJAR LINEAS\n"+"ESCRIBA 2 PARA DIBUJAR RECTANGULOS\n"+"ESCRIBA 3 PARA DIBUJAR OVALOS\n"+"4.-SALIR");&lt;br /&gt;      opcion=Integer.parseInt(entrada);   &lt;br /&gt;    }&lt;br /&gt;    public void paint(Graphics g)&lt;br /&gt;    {&lt;br /&gt;        super.paint(g);&lt;br /&gt;        for(int i=0;i&lt;10;i++)&lt;br /&gt;        {&lt;br /&gt;            &lt;br /&gt;            switch(opcion)&lt;br /&gt;            {&lt;br /&gt;                case 1:g.drawLine(10,10,250,10+i*10);&lt;br /&gt;                break;&lt;br /&gt;                case 2:g.drawRect(10+i*10,10+i*10,50+i*10,50+i*10);&lt;br /&gt;                break;&lt;br /&gt;                case 3:g.drawOval(10+i*10,10+i*10,50+i*10,50+i*10);&lt;br /&gt;                break;&lt;br /&gt;                case 4: JOptionPane.showMessageDialog(null,"saliendo en 10 secons");&lt;br /&gt;                break;&lt;br /&gt;                default:g.drawString("ESCRIBIO UN VALOR INCORRECTO",10,20+i*15);          &lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt; }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6413567789410130848?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6413567789410130848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6413567789410130848'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/menu-que-muestra-3-figuras.html' title='MENU QUE MUESTRA 3 FIGURAS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6201563502867787245</id><published>2007-10-20T20:10:00.000-05:00</published><updated>2007-10-20T20:19:33.168-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN JAVA'/><title type='text'>PROGRAMA QUE CALCULA TU FECHA ACTUAL DEL 2007.</title><content type='html'>import javax.swing.JOptionPane;&lt;br /&gt;  public class FechaExamen&lt;br /&gt;    {&lt;br /&gt;      public static void main (String args[])&lt;br /&gt;      {&lt;br /&gt;          String primerNumero,segundoNumero,tercerNumero;&lt;br /&gt;          int numero1,numero2,numero3,fecha1,fecha2,fecha3,fecha=2007,fecham=10,fechad=18;&lt;br /&gt;          JOptionPane.showMessageDialog(null,"&lt;&lt;PROGRAMA QUE CALCULA TU AÑO,MES Y DIA ACTUAL&gt;&gt;:");&lt;br /&gt;          primerNumero=JOptionPane.showInputDialog("ESCRIBE EL DIA EN QUE NACISTE:");&lt;br /&gt;          segundoNumero=JOptionPane.showInputDialog("ESCRIBE EL MES EN QUE NACISTE:");&lt;br /&gt;          tercerNumero=JOptionPane.showInputDialog("ESCRIBE EL AÑO EN QUE NACISTE:");&lt;br /&gt;          numero1=Integer.parseInt(primerNumero);&lt;br /&gt;          numero2=Integer.parseInt(segundoNumero);&lt;br /&gt;          numero3=Integer.parseInt(tercerNumero);&lt;br /&gt;          fecha1=fecha-numero3;&lt;br /&gt;          fecha2=fecham-numero2;&lt;br /&gt;          fecha3=numero1-fechad;&lt;br /&gt;          JOptionPane.showMessageDialog(null,"TIENES EN ESTE MOMENTO"+"\naño:" +fecha1+"\nmes:"+fecha2+"\ndia:"+fecha3,"resultados",JOptionPane.INFORMATION_MESSAGE);&lt;br /&gt;      }&lt;br /&gt;          &lt;br /&gt;      }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6201563502867787245?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6201563502867787245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6201563502867787245'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/programa-que-calcula-tu-fecha-actual.html' title='PROGRAMA QUE CALCULA TU FECHA ACTUAL DEL 2007.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-7201912293321663566</id><published>2007-10-07T15:09:00.000-05:00</published><updated>2007-10-07T15:24:12.668-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>LA ESPIRAL MORTAL EN 'C'.</title><content type='html'>/*LA ESPIRAL MORTAL, ES UN PROGRAMA REALIZADO EN 'C'POR:&lt;br /&gt;         ""MERIDA ALFARO MIGUEL ANGEL""&lt;br /&gt;       COMPILADO EN TURBO C.*/&lt;br /&gt;&lt;br /&gt;#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;#include"dos.h"&lt;br /&gt;&lt;br /&gt;void main()&lt;br /&gt;{&lt;br /&gt;   int numy=0,numx=0,num1=1,num2=2,x,y,m;&lt;br /&gt;     clrscr();&lt;br /&gt;      x=80;&lt;br /&gt;      y=24;&lt;br /&gt;       int x2=80;&lt;br /&gt;       int y2=24;&lt;br /&gt;&lt;br /&gt;    for(m=0;m&lt;12;m++)&lt;br /&gt;   {&lt;br /&gt;&lt;br /&gt;      for(x=numx;x&lt;x2;x++)&lt;br /&gt;       {&lt;br /&gt;  gotoxy(x,numy);printf("-");&lt;br /&gt;  delay(20);&lt;br /&gt;       }&lt;br /&gt;   for(y=num2;y&lt;y2;y++)&lt;br /&gt;   {&lt;br /&gt;     gotoxy(x,y);printf("|");&lt;br /&gt;     delay(20);&lt;br /&gt;   }&lt;br /&gt;     for(x=x2;x&gt;num1;x--)&lt;br /&gt;     {&lt;br /&gt;       gotoxy(x,y);printf("-");&lt;br /&gt;       delay(20);&lt;br /&gt;     }&lt;br /&gt;        for(y=y2;y&gt;num1;y--)&lt;br /&gt;        {&lt;br /&gt;   gotoxy(num1,y);printf("|");&lt;br /&gt;   delay(20);&lt;br /&gt;        }&lt;br /&gt;      x2--;&lt;br /&gt;      y2--;&lt;br /&gt;      x--;&lt;br /&gt;      numx++;&lt;br /&gt;      num1++;&lt;br /&gt;      num2++;&lt;br /&gt;&lt;br /&gt;   }&lt;br /&gt;   gotoxy(30,25);printf("LA ESPIRAL MORTAL");&lt;br /&gt;   getch();&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-7201912293321663566?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/7201912293321663566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/7201912293321663566'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/10/la-espiral-mortal-en-c.html' title='LA ESPIRAL MORTAL EN &apos;C&apos;.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-2111558618683517217</id><published>2007-09-30T20:27:00.000-05:00</published><updated>2007-09-30T20:28:46.723-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN MS-DOS'/><title type='text'>PROGRAMACIÓN  EN MS-DOS</title><content type='html'>//programa en MS-DOS que compara la calidad de los&lt;br /&gt;// beisbolistas&lt;br /&gt;@echo off&lt;br /&gt;if %1 geq 0 goto compara&lt;br /&gt;goto fuera&lt;br /&gt;&lt;br /&gt;:compara&lt;br /&gt;if %1 leq 500 goto rango&lt;br /&gt;goto fuera&lt;br /&gt;&lt;br /&gt;:rango&lt;br /&gt;if %1 leq 150 goto chafon&lt;br /&gt;goto rango1&lt;br /&gt;&lt;br /&gt;:chafon&lt;br /&gt;@echo chafon&lt;br /&gt;goto salida&lt;br /&gt;&lt;br /&gt;:rango1&lt;br /&gt;if %1 leq 100 goto maleta&lt;br /&gt;goto rango2&lt;br /&gt;&lt;br /&gt;:maleta&lt;br /&gt;@echo maleta&lt;br /&gt;goto salida&lt;br /&gt;&lt;br /&gt;:rango2&lt;br /&gt;if %1 450 goto regular&lt;br /&gt;goto rango3&lt;br /&gt;&lt;br /&gt;:regular&lt;br /&gt;@echo regular&lt;br /&gt;goto salida&lt;br /&gt;&lt;br /&gt;:rango3&lt;br /&gt;if %1 leq 450 goto bueno&lt;br /&gt;goto rango4&lt;br /&gt;&lt;br /&gt;:bueno&lt;br /&gt;@echo bueno&lt;br /&gt;goto salida&lt;br /&gt;&lt;br /&gt;:rango4&lt;br /&gt;@echo barry bonds&lt;br /&gt;goto salida&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;:fuera&lt;br /&gt;@echo fuera de rango&lt;br /&gt;&lt;br /&gt;:salida&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-2111558618683517217?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/2111558618683517217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/2111558618683517217'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programacin-en-ms-dos.html' title='PROGRAMACIÓN  EN MS-DOS'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-1506766042178278563</id><published>2007-09-30T20:21:00.001-05:00</published><updated>2007-09-30T20:22:15.903-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>PROGRAMA EN 'C' QUE SIMULA DAR LA  HORA DE UN RELOJ.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;int hi,hf,mi,mf,camph,campme,campmi,x,y,a,b;&lt;br /&gt;main()&lt;br /&gt;{ do{&lt;br /&gt;clrscr();&lt;br /&gt;printf("\nintroduce hora inicial:");&lt;br /&gt;scanf("%d",&amp;hi);&lt;br /&gt;printf("\nintroduce minuto inicial:");&lt;br /&gt;scanf("%d",&amp;mi);&lt;br /&gt;printf("\nintroduce hora final:");&lt;br /&gt;scanf("%d",&amp;hf);&lt;br /&gt;printf("\nintroduce minuto final:");&lt;br /&gt;scanf("%d",&amp;mf);&lt;br /&gt;}while(hi&gt;mf &amp;&amp; mi&lt;mf);&lt;br /&gt;x=hf-hi;&lt;br /&gt;b=x*60;&lt;br /&gt;if(mi&gt;mf){&lt;br /&gt;y=mf-mi;&lt;br /&gt;a=y+b;&lt;br /&gt;}else{&lt;br /&gt;y=mf-mi;&lt;br /&gt;a=y+b;}&lt;br /&gt;camph=a/60;&lt;br /&gt;campme=a/30;&lt;br /&gt;campmi=a/15;&lt;br /&gt;printf("\ncampanadas de una hora:%d",camph);&lt;br /&gt;printf("\ncampanadas de madia hora:%d",campme);&lt;br /&gt;printf("\ncampanadas de quince minutos:%d",campmi);&lt;br /&gt;getch();&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-1506766042178278563?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1506766042178278563'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1506766042178278563'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-c-que-simula-dar-la-hora-de.html' title='PROGRAMA EN &apos;C&apos; QUE SIMULA DAR LA  HORA DE UN RELOJ.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-753804300950669515</id><published>2007-09-30T20:19:00.001-05:00</published><updated>2007-09-30T20:21:01.308-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>PROGRAMA EN 'C' QUE CREA UN GUSANITO.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;#include"dos.h"&lt;br /&gt;char cadena[21];&lt;br /&gt;int x,y;&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;     clrscr();&lt;br /&gt;      gotoxy(2,1);printf("cadena:");&lt;br /&gt;       scanf("%s",cadena);&lt;br /&gt; for(x=2;x&lt;=74;x++)&lt;br /&gt;  {&lt;br /&gt;    clrscr();&lt;br /&gt;     gotoxy(x,1);printf("%s",cadena);&lt;br /&gt;      delay(50);&lt;br /&gt;  }&lt;br /&gt;      for(x=74;x&gt;=2;x--)&lt;br /&gt;       {&lt;br /&gt;  clrscr();&lt;br /&gt;   gotoxy(x,25);printf("%s",cadena);&lt;br /&gt;    delay(50);&lt;br /&gt;       }&lt;br /&gt;    for(y=1;y&lt;=25;y++)&lt;br /&gt;    {&lt;br /&gt;      clrscr();&lt;br /&gt;       gotoxy(2,y);printf("%s",cadena);&lt;br /&gt; delay(50);&lt;br /&gt;    }&lt;br /&gt;     for(y=25;y&gt;=1;y--)&lt;br /&gt;      {&lt;br /&gt;        clrscr();&lt;br /&gt;  gotoxy(74,y);printf("%s",cadena);&lt;br /&gt;   delay(50);&lt;br /&gt;      }&lt;br /&gt;       clrscr();&lt;br /&gt;      printf("%s",cadena);&lt;br /&gt;     getch();&lt;br /&gt;    return 0;&lt;br /&gt;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-753804300950669515?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/753804300950669515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/753804300950669515'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-c-que-crea-un-gusanito.html' title='PROGRAMA EN &apos;C&apos; QUE CREA UN GUSANITO.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-4275460129434874186</id><published>2007-09-30T20:16:00.000-05:00</published><updated>2007-09-30T20:19:31.966-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>PROGRAMA QUE CREA UNA COLA EN 'C'.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;int col[5],c_cola=0,x;&lt;br /&gt;main ()&lt;br /&gt;{&lt;br /&gt;int op;&lt;br /&gt;clrscr();&lt;br /&gt;do&lt;br /&gt;{&lt;br /&gt;printf("\n\nMENU\n1.-INSETAR\n2.-EXTRAER\n3.-IMPRIMIR\n4.-SALIR\nOPCION: ");&lt;br /&gt;scanf("%d",&amp;op);&lt;br /&gt;switch (op)&lt;br /&gt;{&lt;br /&gt; case 1:&lt;br /&gt; clrscr();&lt;br /&gt; if(c_cola&lt;5){&lt;br /&gt; printf("\nvalor: ");&lt;br /&gt; scanf("%d",&amp;col[c_cola]);&lt;br /&gt; c_cola++;&lt;br /&gt; }&lt;br /&gt; else&lt;br /&gt; printf("\nla cola esta llena ");&lt;br /&gt; break;&lt;br /&gt; case 2:&lt;br /&gt; clrscr();&lt;br /&gt;  if(col&gt;0)&lt;br /&gt;  {&lt;br /&gt;  if(c_cola==0)&lt;br /&gt;  {&lt;br /&gt;   printf("La cola esta vacia");&lt;br /&gt;  }&lt;br /&gt;   for(x=0; x&lt;5; x++)&lt;br /&gt;    {&lt;br /&gt;     col[x]=col[x+1];&lt;br /&gt;    }&lt;br /&gt;  c_cola--;&lt;br /&gt; }&lt;br /&gt;  else&lt;br /&gt; printf("\cola vacia");&lt;br /&gt; break;&lt;br /&gt; case 3:&lt;br /&gt; clrscr();&lt;br /&gt; int x,y;&lt;br /&gt; printf("\ncontenido de la cola : ");&lt;br /&gt; for(x=0;x&lt;c_cola;x++)&lt;br /&gt; printf("\n%d",col[x]);&lt;br /&gt; for(y=x;y&lt;5;y++)&lt;br /&gt; printf("\nNULL");&lt;br /&gt; break;&lt;br /&gt; case 4:&lt;br /&gt; printf("\nsalir");&lt;br /&gt; }}&lt;br /&gt; while(op!=4);&lt;br /&gt; getch();&lt;br /&gt; }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-4275460129434874186?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4275460129434874186'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4275460129434874186'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-que-crea-una-cola-en-c.html' title='PROGRAMA QUE CREA UNA COLA EN &apos;C&apos;.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-2819647111862832567</id><published>2007-09-30T20:14:00.000-05:00</published><updated>2007-09-30T20:16:25.673-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>PROGRAMA EN 'C' QUE INVIERTE LA PALABRA INTRODUCIDA.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"string.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;void main()&lt;br /&gt;{&lt;br /&gt;clrscr();&lt;br /&gt;char original[21],invertido[21];&lt;br /&gt;int lon,x,y;&lt;br /&gt;printf("escribe la cadena:");&lt;br /&gt;scanf("%s",original);&lt;br /&gt;lon=strlen(original);&lt;br /&gt;for(x=0,y=lon-1;x&lt;lon;x++,y--)&lt;br /&gt;invertido[y]=original[x];&lt;br /&gt;invertido[lon]='\0';&lt;br /&gt;printf("original:%s invertido:%s\n",original,invertido);&lt;br /&gt;getch();&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-2819647111862832567?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/2819647111862832567'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/2819647111862832567'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-c-que-invierte-la-palabra.html' title='PROGRAMA EN &apos;C&apos; QUE INVIERTE LA PALABRA INTRODUCIDA.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-725050802493826640</id><published>2007-09-30T20:13:00.000-05:00</published><updated>2007-09-30T20:14:40.225-05:00</updated><title type='text'>PROGRAMA EN 'C' QUE CREA SIMPLEMENTE UN CUADRO.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;int x=5,y=2;&lt;br /&gt;clrscr();&lt;br /&gt;do&lt;br /&gt;{&lt;br /&gt;gotoxy(x,1);printf("-");&lt;br /&gt;gotoxy(x,8);printf("-");&lt;br /&gt;gotoxy(x,13);printf("-");&lt;br /&gt;gotoxy(x,20);printf("-");&lt;br /&gt;x=x+1;&lt;br /&gt;}&lt;br /&gt;while(x&lt;=60);&lt;br /&gt;printf("\n");&lt;br /&gt;do&lt;br /&gt;{&lt;br /&gt;gotoxy(5,y);printf("|");&lt;br /&gt;gotoxy(20,y);printf("|");&lt;br /&gt;gotoxy(33,y);printf("|");&lt;br /&gt;gotoxy(45,y);printf("|");&lt;br /&gt;y=y+1;&lt;br /&gt;}&lt;br /&gt;while(y&lt;=20);&lt;br /&gt;getch();&lt;br /&gt;return 0;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-725050802493826640?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/725050802493826640'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/725050802493826640'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-c-que-crea-simplemente-un.html' title='PROGRAMA EN &apos;C&apos; QUE CREA SIMPLEMENTE UN CUADRO.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-4483725060063429141</id><published>2007-09-30T20:11:00.001-05:00</published><updated>2007-09-30T20:13:44.076-05:00</updated><title type='text'>PROGRAMA EN 'C' QUE CREA UN DOBLE CUADRO CON LA PALABRA INTRODUCIDA.</title><content type='html'>#include "stdio.h"&lt;br /&gt;#include "string.h"&lt;br /&gt;#include "conio.h"&lt;br /&gt;#include "dos.h"&lt;br /&gt;  main()&lt;br /&gt;{&lt;br /&gt;    char palabra[21];&lt;br /&gt;     int lon,w,x,y,z;&lt;br /&gt;&lt;br /&gt;      clrscr();&lt;br /&gt;       printf("Introduce la palabra:");&lt;br /&gt; scanf("%s",palabra);&lt;br /&gt;  lon=strlen(palabra);&lt;br /&gt;   printf("\n");&lt;br /&gt;     for(x=0,y=lon*2-2;x&lt;lon*2-1;x++,y--)&lt;br /&gt;      {&lt;br /&gt; if(x == 0 || x == lon*2-2)&lt;br /&gt;  {&lt;br /&gt;    for(z=0;z&lt;lon;z++)&lt;br /&gt;     {&lt;br /&gt;      printf("%c",palabra[z]);&lt;br /&gt;      delay(100);&lt;br /&gt;     }&lt;br /&gt;  for(z=lon-2;z&gt;=0;z--)&lt;br /&gt;  {&lt;br /&gt;    printf("%c",palabra[z]);&lt;br /&gt;    delay(100);&lt;br /&gt;  }&lt;br /&gt;  }&lt;br /&gt;    else if(x == lon-1)&lt;br /&gt;    {&lt;br /&gt;      for(z=lon-1;z&gt;=0;z--)&lt;br /&gt;      {&lt;br /&gt;       printf("%c",palabra[z]);&lt;br /&gt;       delay(100);&lt;br /&gt;      }&lt;br /&gt;    for(z=1;z&lt;lon;z++)&lt;br /&gt;    {&lt;br /&gt;     printf("%c",palabra[z]);&lt;br /&gt;     delay(100);&lt;br /&gt;    }&lt;br /&gt;    }&lt;br /&gt;        else if(x&gt;0 &amp;&amp; x&lt;lon-1)&lt;br /&gt;  {&lt;br /&gt;     printf("%c",palabra[x]);&lt;br /&gt;     delay(100);&lt;br /&gt;       for(w=0;w&lt;lon-2;w++)&lt;br /&gt;        printf(" ");&lt;br /&gt;     printf("%c",palabra[y-(lon-1)]);&lt;br /&gt;        for(w=0;w&lt;lon-2;w++)&lt;br /&gt;         printf(" ");&lt;br /&gt;     printf("%c",palabra[x]);&lt;br /&gt;     delay(100);&lt;br /&gt;  }&lt;br /&gt;      else if(x&gt;lon-1 &amp;&amp; x&lt; lon*2-2)&lt;br /&gt;      {&lt;br /&gt;   printf("%c",palabra[y]);&lt;br /&gt;   delay(100);&lt;br /&gt;    for(w=0;w&lt;lon-2;w++)&lt;br /&gt;     printf(" ");&lt;br /&gt;         printf("%c",palabra[x-(lon-1)]);&lt;br /&gt;   for(w=0;w&lt;lon-2;w++)&lt;br /&gt;    printf(" ");&lt;br /&gt;         printf("%c",palabra[y]);&lt;br /&gt;         delay(100);&lt;br /&gt;      }&lt;br /&gt;         printf("\n");&lt;br /&gt;         delay(100);&lt;br /&gt;     }&lt;br /&gt; printf("\n");&lt;br /&gt;       getch();&lt;br /&gt;      return 0;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-4483725060063429141?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4483725060063429141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4483725060063429141'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-c-que-crea-un-doble-cuadro.html' title='PROGRAMA EN &apos;C&apos; QUE CREA UN DOBLE CUADRO CON LA PALABRA INTRODUCIDA.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-734141345234348172</id><published>2007-09-30T20:10:00.001-05:00</published><updated>2007-09-30T20:11:49.827-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>PROGRAMA EN 'C' QUE TE MUESTRA UNA PALABRA EN FORMA DE ROMBO.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;#include"string.h"&lt;br /&gt;#include"dos.h"&lt;br /&gt;&lt;br /&gt;char palabra[30];&lt;br /&gt;int lon, x,a,b;&lt;br /&gt; main()&lt;br /&gt; {&lt;br /&gt; clrscr();&lt;br /&gt; printf("\n\t\t\t\t\t\t&lt;&lt;MERIDA ALFARO MIGUEL ANGEL&gt;&gt;");&lt;br /&gt; printf("\nIntroduce palabra:");&lt;br /&gt; scanf("%s",palabra);&lt;br /&gt; lon=strlen(palabra);&lt;br /&gt; for (x=0;x&lt;lon;x++)&lt;br /&gt;    {&lt;br /&gt;      for (a=lon-(x+1);a&gt;0;a--)&lt;br /&gt;      {&lt;br /&gt;  printf("*");&lt;br /&gt;  delay(100);&lt;br /&gt;  }&lt;br /&gt;      for (b=0;b&lt;=(x*2);b++)&lt;br /&gt;  printf("%c",palabra[x]);&lt;br /&gt;    printf("\n");&lt;br /&gt;    }&lt;br /&gt;     for (x=lon-2;x&gt;=0;x--)&lt;br /&gt; {&lt;br /&gt;   for (a=0;a&lt;lon-x-1;a++)&lt;br /&gt;   {&lt;br /&gt;      printf("*");&lt;br /&gt;      delay(100);&lt;br /&gt;      }&lt;br /&gt;   for (b=0;b&lt;=(x*2);b++)&lt;br /&gt;      printf("%c",palabra[x]);&lt;br /&gt;      printf("\n");&lt;br /&gt; }&lt;br /&gt;     getch();&lt;br /&gt;     return 0;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-734141345234348172?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/734141345234348172'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/734141345234348172'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-c-que-te-muestra-una.html' title='PROGRAMA EN &apos;C&apos; QUE TE MUESTRA UNA PALABRA EN FORMA DE ROMBO.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-4799893231694799818</id><published>2007-09-30T20:02:00.000-05:00</published><updated>2007-09-30T20:06:53.479-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN &apos;C&apos;.'/><title type='text'>PROGRAMA EN 'C' QUE CREA UNA PILA.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;int pila[5],ap_pila=0;&lt;br /&gt;void main()&lt;br /&gt;{&lt;br /&gt;    int op;&lt;br /&gt;   clrscr();&lt;br /&gt;  do{&lt;br /&gt;  //clrscr();&lt;br /&gt;   printf("\n\nMENU\n1.-insertar\n2.-extraer\n3.-imprimir\n4.-salir\nopcion:");&lt;br /&gt;   scanf("%d",&amp;op);&lt;br /&gt;   switch (op)&lt;br /&gt;   {&lt;br /&gt;     case 1:&lt;br /&gt;      clrscr();&lt;br /&gt; if(ap_pila&lt;5){&lt;br /&gt;printf("\nvalor:");&lt;br /&gt;scanf("%d",&amp;pila[ap_pila]);&lt;br /&gt;ap_pila++;&lt;br /&gt;}else&lt;br /&gt;printf("\nla pila esta llena");&lt;br /&gt;break;&lt;br /&gt;case 2:&lt;br /&gt;clrscr();&lt;br /&gt;if (ap_pila&gt;0){&lt;br /&gt;printf("extrayendo el elemento%d=%d",ap_pila,pila[ap_pila-1]);&lt;br /&gt;ap_pila--;&lt;br /&gt;}else&lt;br /&gt;printf("\nla pila esta vacia");&lt;br /&gt;break;&lt;br /&gt;case 3:&lt;br /&gt;clrscr();&lt;br /&gt;int x,y;&lt;br /&gt;printf("\contenido de la pila:");&lt;br /&gt;for(x=0;x&lt;ap_pila;x++)&lt;br /&gt;printf("\n%d",pila[x]);&lt;br /&gt;for(y=x;y&lt;5;y++)&lt;br /&gt;printf("\nNULL");&lt;br /&gt;break;&lt;br /&gt;case 4:&lt;br /&gt;printf("\nsaliendo del programa");&lt;br /&gt;}}&lt;br /&gt;while(op!=4);&lt;br /&gt;getch();&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-4799893231694799818?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4799893231694799818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/4799893231694799818'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-c-que-crea-una-pila.html' title='PROGRAMA EN &apos;C&apos; QUE CREA UNA PILA.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6234386230482518621</id><published>2007-09-30T19:37:00.000-05:00</published><updated>2007-09-30T19:56:55.340-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='EN &quot;C&quot;.'/><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN'/><title type='text'>CALCULA EL FACTORIAL DE UN NUMERO EN LENGUAJE 'C'</title><content type='html'>/*PROGRAMA QUE CALCULA EL FACTORIAL DE UN NUMERO UTILIZANDO UNA FUNCIÓN&lt;br /&gt;QUE RETORNA EL VALOR DE LA OPERACIÓN DEL FACTORIAL A  LA FUNCIÓN PRINCIPAL,&lt;br /&gt;COMPILADO EN TURBO C por: MERIDA ALFARO MIGUEL ANGEL.*/&lt;br /&gt;&lt;br /&gt;#include    "stdio.h"&lt;br /&gt;#include    "conio.h"&lt;br /&gt;&lt;br /&gt;float factorial(float x)&lt;br /&gt;{   float fact=0;&lt;br /&gt;    float num=x;&lt;br /&gt;    clrscr();&lt;br /&gt;    fact=num;&lt;br /&gt;    do{&lt;br /&gt;  fact=fact*(num-1);&lt;br /&gt;  num=num-1;&lt;br /&gt;      }while(num&gt;1);&lt;br /&gt;      return fact;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;float main()&lt;br /&gt;{   float num,result;&lt;br /&gt;     clrscr();&lt;br /&gt;       printf("inserta el numero:");&lt;br /&gt;       scanf("%f",&amp;num);&lt;br /&gt;     result=factorial(num);&lt;br /&gt;    printf("el factorial es:%.2f",result);&lt;br /&gt;    //float x=4*result+5;&lt;br /&gt;    //printf("\nel resultado es:%.2f",x);&lt;br /&gt;  getch();&lt;br /&gt;  return 0;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6234386230482518621?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6234386230482518621'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6234386230482518621'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/calcula-el-factorial-de-un-numero-en.html' title='CALCULA EL FACTORIAL DE UN NUMERO EN LENGUAJE &apos;C&apos;'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-977605605139769577</id><published>2007-09-25T23:22:00.000-05:00</published><updated>2007-09-25T23:26:17.188-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN PROLOG'/><title type='text'>PROGRAMA EN PROLOG QUE VERIFICA SI LOS NOMBRES AXCESADOS SON VALIDOS.</title><content type='html'>/*ESTE PROGRAMA TIENE K ESCRIBIRLO EN UN BLOC DE NOTAS,GURADARLO CON LA EXTENCIÓN .PL PARA QUE QUEDE COMO UN EJECUTABLE DE DEL PROGRAMA PROLOG.*/&lt;br /&gt;&lt;br /&gt;parent(pam,bob).&lt;br /&gt;parent(tom,bob).&lt;br /&gt;parent(tom,liz).&lt;br /&gt;parent(bob,ann).&lt;br /&gt;parent(bob,pat).&lt;br /&gt;parent(pat,jim).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-977605605139769577?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/977605605139769577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/977605605139769577'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-prolog-que-verifica-si-los.html' title='PROGRAMA EN PROLOG QUE VERIFICA SI LOS NOMBRES AXCESADOS SON VALIDOS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-1776013287682713261</id><published>2007-09-25T23:03:00.000-05:00</published><updated>2007-09-25T23:19:53.787-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN JAVA'/><title type='text'>SUMA DE DOS NUMEROS EN JAVA.</title><content type='html'>import javax.swing.JOptionPane;&lt;br /&gt;  public class suma&lt;br /&gt;    {&lt;br /&gt;      public static void main (String args[])&lt;br /&gt;      {&lt;br /&gt;          String primerNumero,segundoNumero;&lt;br /&gt;          int numero1,numero2,suma;&lt;br /&gt;          primerNumero=JOptionPane.showInputDialog("ESCRIBE EL PRIMER NUMERO:");&lt;br /&gt;          segundoNumero=JOptionPane.showInputDialog("ESCRIBE EL SEGUNDO NUMERO:");&lt;br /&gt;          numero1=Integer.parseInt(primerNumero);&lt;br /&gt;          numero2=Integer.parseInt(segundoNumero);&lt;br /&gt;          suma=numero1+numero2;&lt;br /&gt;          JOptionPane.showMessageDialog(null,"LA SUMA ES:" +suma,"resultados",JOptionPane.INFORMATION_MESSAGE);&lt;br /&gt;      }&lt;br /&gt;          &lt;br /&gt;      }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-1776013287682713261?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1776013287682713261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1776013287682713261'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/suma-de-dos-numeros-en-java.html' title='SUMA DE DOS NUMEROS EN JAVA.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6910647610927146058</id><published>2007-09-25T22:47:00.000-05:00</published><updated>2007-09-25T22:57:59.426-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN EN JAVA'/><title type='text'>PROGRAMA EN 'JAVA' COMPILANDO EN NETBEANS 5.0,  EL CUAL COMPARA 5 NUMEROS Y LOS CLASIFICA:"POSITIVOS","NEGATIVOS" Y "CEROS".</title><content type='html'>import java.awt.graphics;&lt;br /&gt;import javax.swing.japplet;&lt;br /&gt;&lt;br /&gt;        public class applet&lt;br /&gt;        {&lt;br /&gt;            public static void main (String args[])&lt;br /&gt;            {&lt;br /&gt;               String numero[];&lt;br /&gt;               numero=new String[6];&lt;br /&gt;               int x,posi=0,nega=0,cero=0,num[];&lt;br /&gt;               num=new int[6];&lt;br /&gt;               x=1;&lt;br /&gt;               while(x&lt;=5)&lt;br /&gt;               {&lt;br /&gt;                   numero[x]=JOptionPane.showInputDialog("numero"+x);&lt;br /&gt;                   x++;&lt;br /&gt;               }           &lt;br /&gt;               x=1;&lt;br /&gt;               while(x&lt;=5)&lt;br /&gt;               {&lt;br /&gt;                   num[x]=Integer.parseInt(numero[x]);&lt;br /&gt;                   if(num[x]==0)&lt;br /&gt;                       cero=cero+1;&lt;br /&gt;                   if(num[x]&lt;0)&lt;br /&gt;                       nega=nega+1;&lt;br /&gt;                   if(num[x]&gt;0)&lt;br /&gt;                       posi=posi+1;&lt;br /&gt;                   x++;&lt;br /&gt;               }&lt;br /&gt;               JOptionPane.showMessageDialog(null,"cero = "+cero+"\n"+"positivo = "+posi+"\n"+"negativo = "+nega,"resultado",JOptionPane.INFORMATION_MESSAGE);&lt;br /&gt;               &lt;br /&gt;            }&lt;br /&gt;        }&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6910647610927146058?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6910647610927146058'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6910647610927146058'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-en-java-compilando-en-netbeans.html' title='PROGRAMA EN &apos;JAVA&apos; COMPILANDO EN NETBEANS 5.0,  EL CUAL COMPARA 5 NUMEROS Y LOS CLASIFICA:&quot;POSITIVOS&quot;,&quot;NEGATIVOS&quot; Y &quot;CEROS&quot;.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-6271494390120366917</id><published>2007-09-25T22:21:00.000-05:00</published><updated>2007-09-30T19:54:42.723-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN'/><title type='text'>PROGRAMACIÓN EN TURBO 'C' QUE IMPRIME EL CODIGO ASCII.</title><content type='html'>#include "stdio.h"&lt;br /&gt;#include "conio.h"&lt;br /&gt;main()&lt;br /&gt;{&lt;br /&gt;clrscr();&lt;br /&gt;int _c;&lt;br /&gt;clrscr();&lt;br /&gt;_c=1;&lt;br /&gt;do&lt;br /&gt;{&lt;br /&gt;printf("%d\t|%o|\t%x|\t%c|\n",_c,_c,_c,_c);&lt;br /&gt;_c++;&lt;br /&gt;}&lt;br /&gt;while(_c&lt;=255);&lt;br /&gt;getch();&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-6271494390120366917?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6271494390120366917'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/6271494390120366917'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programacin-en-turbo-c-que-imprime-el.html' title='PROGRAMACIÓN EN TURBO &apos;C&apos; QUE IMPRIME EL CODIGO ASCII.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-1751621887430155968</id><published>2007-09-25T22:08:00.000-05:00</published><updated>2007-09-30T19:57:50.519-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN'/><title type='text'>PROGRAMACIÓN EN TURBO C QUE REALIZA EL METODO DE LA BURBUJA: ASCENDENTEMENTE Y DESCENDENTEMENTE.</title><content type='html'># include"stdio.h""&lt;br /&gt;# include"conio.h"&lt;br /&gt;&lt;br /&gt;int y,auxnum,i,j,x;&lt;br /&gt;int num[10];&lt;br /&gt; void mayor()&lt;br /&gt; {&lt;br /&gt;    //clrscr();&lt;br /&gt;    x=11;&lt;br /&gt;      //printf("ORDENA LOS NUMEROS DE MAYOR A MENOR\n");&lt;br /&gt;    for (y=1;y&lt;11;y++)&lt;br /&gt;    {&lt;br /&gt;      printf("teclea los numeros %d:",y);&lt;br /&gt;      scanf("%d",&amp;num[y]);&lt;br /&gt;    }&lt;br /&gt;     getch ();&lt;br /&gt;     clrscr ();&lt;br /&gt;      for (i=1;i&lt;x-1;i++)&lt;br /&gt;       for (j=1;j&lt;x-1;j++)&lt;br /&gt; {&lt;br /&gt;   if(num[j]&lt;num[j+1])&lt;br /&gt;    {&lt;br /&gt;      auxnum=num[j];&lt;br /&gt;      num[j]=num[j+1];&lt;br /&gt;      num[j+1]=auxnum;&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;     for (int j=1;j&lt;11;j++)&lt;br /&gt;      {&lt;br /&gt;      gotoxy(13,j+2);printf("los numeros son:%d",num[j]);&lt;br /&gt;      }&lt;br /&gt;      getch();&lt;br /&gt; }&lt;br /&gt; void menor()&lt;br /&gt; {&lt;br /&gt;    clrscr();&lt;br /&gt;     x=11;&lt;br /&gt;     //printf("ORDENA LOS NUMEROS DE MAYOR A MENOR\n");&lt;br /&gt;     for (y=1;y&lt;11;y++)&lt;br /&gt;      {&lt;br /&gt; printf("teclea los numeros %d:",y);&lt;br /&gt; scanf("%d",&amp;num[y]);&lt;br /&gt;       }&lt;br /&gt;  getch ();&lt;br /&gt;  clrscr ();&lt;br /&gt; for (i=1;i&lt;x-1;i++)&lt;br /&gt;  for (j=1;j&lt;x-1;j++)&lt;br /&gt;    {&lt;br /&gt;      if(num[j]&gt;num[j+1])&lt;br /&gt;        {&lt;br /&gt;    auxnum=num[j];&lt;br /&gt;    num[j]=num[j+1];&lt;br /&gt;    num[j+1]=auxnum;&lt;br /&gt;  }&lt;br /&gt;       }&lt;br /&gt; for (int j=1;j&lt;11;j++)&lt;br /&gt;  {&lt;br /&gt;  gotoxy(13,j+2);printf("los numeros son:%d",num[j]);&lt;br /&gt;  }&lt;br /&gt;  getch();&lt;br /&gt; }&lt;br /&gt;&lt;br /&gt; int menu()&lt;br /&gt; {  int op;&lt;br /&gt;     clrscr();&lt;br /&gt;     printf("&lt;&lt;MENU&gt;&gt;\n1.-MAYOR A MENOR\n2.-MENOR MAYOR\n3.-SALIR\nopcion?:");&lt;br /&gt;     scanf("%d",&amp;op);&lt;br /&gt;     return op;&lt;br /&gt;&lt;br /&gt; }&lt;br /&gt;main()&lt;br /&gt;{//llave del main&lt;br /&gt;  int op;&lt;br /&gt;  clrscr();&lt;br /&gt;  do{&lt;br /&gt;  op=menu();&lt;br /&gt;  switch(op)&lt;br /&gt;  {&lt;br /&gt;   case 1:&lt;br /&gt;   clrscr();&lt;br /&gt;   mayor();&lt;br /&gt;   break;&lt;br /&gt;    case 2:&lt;br /&gt;    menor();&lt;br /&gt;    break;&lt;br /&gt;    case 3:&lt;br /&gt;    printf("\nsaliendo del programa......");&lt;br /&gt;    getch();&lt;br /&gt;    break;&lt;br /&gt;  }} while(op!=3);&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-1751621887430155968?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1751621887430155968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/1751621887430155968'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programacin-en-turbo-c-que-realiza-el.html' title='PROGRAMACIÓN EN TURBO C QUE REALIZA EL METODO DE LA BURBUJA: ASCENDENTEMENTE Y DESCENDENTEMENTE.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-5318672936067126732</id><published>2007-09-25T21:53:00.001-05:00</published><updated>2007-09-30T19:58:17.247-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN'/><title type='text'>PROGRAMACIÓN EN TURBO 'C' QUE MUESTRA EL TRIANGULO DE PASCAL.</title><content type='html'>/* PROGRAMA QUE MUESTRA EL TRIANGULO DE PASCAL,EJEMPLO:&lt;br /&gt;***************1&lt;br /&gt;*************1 2 1&lt;br /&gt;************1 3 3 1&lt;br /&gt;***********1 4 6 4 1&lt;br /&gt;*********1 5 10 10 5 1&lt;br /&gt;*******1 6 15 20 15 6 1&lt;br /&gt;&lt;br /&gt;   REALIZADO POR: MERIDA ALFARO MIGUEL ANGEL Y COMPILADO EN TURBO C */&lt;br /&gt;&lt;br /&gt;#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;void main()&lt;br /&gt;{    intnum,num2,num3,num4,num5,num6,num7,num8,num9,num10,num11,                                                           int num12,num13,num14,num15,num16,num17,num18,num19,num20,x=0;&lt;br /&gt;      clrscr();&lt;br /&gt;    printf("  \t\t\t&lt;&lt;PIRAMIDE DE PASCAL&gt;&gt;");&lt;br /&gt;    printf("\n\ninserta el numero:");&lt;br /&gt;    scanf("%d",&amp;num);&lt;br /&gt;  //OPERACION&lt;br /&gt;  num2=num+num;//2&lt;br /&gt;  num3=num2+num;//3&lt;br /&gt;  num4=num3+num;//4&lt;br /&gt;  num5=num4+num;//5&lt;br /&gt;  num6=num3+num3;//6&lt;br /&gt;  num7=num6+num4;//10&lt;br /&gt;  num8=num7+num5;// 15&lt;br /&gt;  num9=num7+num7; //20&lt;br /&gt;  num10= num6+num;//7&lt;br /&gt;  num11=num8+num6;//21&lt;br /&gt;  num12=num9+num8;//35&lt;br /&gt;  num13=num10+num;//8&lt;br /&gt;  num14=num9+num13;//28&lt;br /&gt;  num15=num11+num12;//56&lt;br /&gt;  num16=num12+num12;//70&lt;br /&gt;  num17=num13+num;//9&lt;br /&gt;  num18=num13+num14;//36&lt;br /&gt;  num19=num14+num15;//84&lt;br /&gt;  num20=num15+num16;//126&lt;br /&gt;&lt;br /&gt;    printf("\n\n");&lt;br /&gt;&lt;br /&gt;  for(x=0;x&lt;=36;x++)&lt;br /&gt;  printf(" ");&lt;br /&gt;  printf("%d\n",num);&lt;br /&gt;&lt;br /&gt;     for(x=0;x&lt;=34;x++)&lt;br /&gt;     printf(" ");&lt;br /&gt;     printf("%d   %d\n",num,num);&lt;br /&gt;&lt;br /&gt;    for(x=0;x&lt;=32;x++)&lt;br /&gt;    printf(" ");&lt;br /&gt;    printf("%d   %d   %d\n",num,num2,num);&lt;br /&gt;&lt;br /&gt;     for(x=0;x&lt;=30;x++)&lt;br /&gt;     printf(" ");&lt;br /&gt;     printf("%d   %d   %d   %d\n",num,num3,num3,num);&lt;br /&gt;&lt;br /&gt;      for(x=0;x&lt;=28;x++)&lt;br /&gt;      printf(" ");&lt;br /&gt;      printf("%d   %d   %d   %d   %d\n",num,num4,num6,num4,num);&lt;br /&gt;&lt;br /&gt; for(x=0;x&lt;=26;x++)&lt;br /&gt; printf(" ");&lt;br /&gt; printf("%d   %d  %d   %d  %d   %d\n",num,num5,num7,num7,num5,num);&lt;br /&gt;&lt;br /&gt;  for(x=0;x&lt;=24;x++)&lt;br /&gt;  printf(" ");&lt;br /&gt;  printf("%d   %d  %d  %d  %d   %d   %d\n",num,num6,num8,num9,num8,num6,num);&lt;br /&gt;&lt;br /&gt;   for(x=0;x&lt;=22;x++)&lt;br /&gt;   printf(" ");&lt;br /&gt;   printf("%d   %d  %d  %d  %d  %d   %d  %d\n",num,num10,num11,num12,num12,num11,num10,num);&lt;br /&gt;&lt;br /&gt;       for(x=0;x&lt;=20;x++)&lt;br /&gt;       printf(" ");&lt;br /&gt;       printf("%d   %d  %d  %d  %d  %d  %d   %d  %d\n",num,num13,num14,num15,num16,num15,num14,num13,num);&lt;br /&gt;&lt;br /&gt;   for(x=0;x&lt;=18;x++)&lt;br /&gt;   printf(" ");&lt;br /&gt;   printf("%d   %d  %d  %d  %d  %d %d  %d  %d  %d",num,num17,num18,num19,num20,num20,num19,num18,num17,num);&lt;br /&gt;&lt;br /&gt;  getch();&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-5318672936067126732?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/5318672936067126732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/5318672936067126732'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programacin-en-turbo-c-que-muestra-el.html' title='PROGRAMACIÓN EN TURBO &apos;C&apos; QUE MUESTRA EL TRIANGULO DE PASCAL.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-8439387360108818062</id><published>2007-09-25T21:44:00.000-05:00</published><updated>2007-09-30T19:58:43.729-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN'/><title type='text'>PROGRAMACIÓN EN TURBO C QUE RESUELVE UNA ECUACIÓN  CON LA FORMULA GENERAL.</title><content type='html'>/*PROGRAMA REALIZA POR MERIDA ALFARO MIGUEL ANGEL EN TURBO C&lt;br /&gt;  QUE ENCUENTRA EL RESULTADO DE UNA ECUACIÓN DE LA FORMA ax^2+bx+c&lt;br /&gt;  UTILIZANDO LA FORMULA GENERAL: X=-b+-[b^2-4ac]/2a&lt;br /&gt;  EJEMPLO a=1,b=2,c=-3 ==&gt; X1=1    y ==&gt; X2=-3  ==&gt; suma=0*/&lt;br /&gt;&lt;br /&gt;#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;#include"math.h"&lt;br /&gt;&lt;br /&gt;int main()&lt;br /&gt;{  float a,b,c,x,suma;&lt;br /&gt;   float r1,r2,y1,y2,x1,x2;&lt;br /&gt;   clrscr();&lt;br /&gt;&lt;br /&gt;   printf("a:");&lt;br /&gt;   scanf("%f",&amp;a);&lt;br /&gt;     printf("b:");&lt;br /&gt;     scanf("%f",&amp;b);&lt;br /&gt;      printf("c:");&lt;br /&gt;      scanf("%f",&amp;c);&lt;br /&gt;   //BUSCANDO X1:&lt;br /&gt;   r1=(b*b)-(4*a*c);&lt;br /&gt;    y1=-b+sqrt(r1);&lt;br /&gt;     x1=y1/2;&lt;br /&gt;       printf("\nX1 = %.2f\n",x1 );&lt;br /&gt;     //BUSCANDO X2:&lt;br /&gt;    r2=(b*b)-(4*a*c);&lt;br /&gt;   y2=-(b)-sqrt(r2);&lt;br /&gt;   x2=y2/2;&lt;br /&gt;   printf("\nX1 = %.2f\n",x2 );&lt;br /&gt;&lt;br /&gt;   //SUSTITUYENDO ax^2+bx+c&lt;br /&gt; suma=a*(x1*x1)+b*x1+c;&lt;br /&gt;  printf("\nla suma es=%.2f",suma);&lt;br /&gt;    getch();&lt;br /&gt;    return 0;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-8439387360108818062?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8439387360108818062'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/8439387360108818062'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programacin-en-turbo-c-que-resuelve-una.html' title='PROGRAMACIÓN EN TURBO C QUE RESUELVE UNA ECUACIÓN  CON LA FORMULA GENERAL.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-5193542812394246134</id><published>2007-09-25T21:27:00.000-05:00</published><updated>2007-09-30T19:59:09.019-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PROGRAMACIÓN'/><title type='text'>PROGRAMA QUE CONVIERTE UN NUMERO DECIMAL A CUALQUIER SISTEMA NUMERICO.</title><content type='html'>#include"stdio.h"&lt;br /&gt;#include"conio.h"&lt;br /&gt;&lt;br /&gt;int menu()&lt;br /&gt;{  clrscr();&lt;br /&gt;   int op;&lt;br /&gt;   printf("&lt;&lt;CONVIERTE UN NUMERO DECIMAL &lt;br /&gt;   A CUALQUIER SISTEMA NUMERICO SIGUIENTE&gt;&gt;\n");&lt;br /&gt;   printf("\n&lt;&lt;1.-BINARIO&gt;&gt;&lt;br /&gt;           \n&lt;&lt;2.-OCTAL&gt;&gt;&lt;br /&gt;           \n&lt;&lt;3.-HEXADECIMAL&gt;&gt;&lt;br /&gt;           \n&lt;&lt;4.-SALIR&gt;&gt;&lt;br /&gt;           \nOPCION ?:");&lt;br /&gt;   scanf("%d",&amp;op);&lt;br /&gt;    return op;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void binario()&lt;br /&gt;{&lt;br /&gt;    /*PROGRAMA QUE CONVIERTE UN NUMERO DECIMAL A BINARIO,EJEMPLO:&lt;br /&gt;      N=85 ==&gt; BINARIO(2) ==&gt; 1 0 1 0 1 0 1(2)&lt;br /&gt;      COMPILADO EN TURBO C ,POR:MERIDA ALFARO MIGUEL ANGEL*/&lt;br /&gt;&lt;br /&gt;   int num,y=0,x=0,divi,resi[30];&lt;br /&gt;   clrscr();&lt;br /&gt;   printf("DAME UN NUMERO:");&lt;br /&gt;   scanf("%d",&amp;num);&lt;br /&gt;   do{&lt;br /&gt;  divi=num/2;&lt;br /&gt;  resi[x]=num%2;&lt;br /&gt;  num=divi;&lt;br /&gt;  x++;&lt;br /&gt;     }while(num&gt;0);&lt;br /&gt;&lt;br /&gt;     printf("\nbinario:  ");&lt;br /&gt;       for(y=x-1;y&gt;=0;y--)&lt;br /&gt; printf("%d",resi[y]);&lt;br /&gt; printf("(2)");&lt;br /&gt;    getch();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void octal()&lt;br /&gt;{&lt;br /&gt;  /*PROGRAMA QUE CONVIERTE UN NUMERO DECIMAL A OCTAL,EJEMPLO:&lt;br /&gt;      N=85 ==&gt; OCTAL(8) ==&gt; 1 2 5(8)&lt;br /&gt;      COMPILADO EN TURBO C ,POR:MERIDA ALFARO MIGUEL ANGEL*/&lt;br /&gt;&lt;br /&gt;   int num,y=0,x=0,divi,resi[30];&lt;br /&gt;   clrscr();&lt;br /&gt;   printf("DAME UN NUMERO:");&lt;br /&gt;   scanf("%d",&amp;num);&lt;br /&gt;   do{&lt;br /&gt;  divi=num/8;&lt;br /&gt;  resi[x]=num%8;&lt;br /&gt;  num=divi;&lt;br /&gt;  x++;&lt;br /&gt;     }while(num&gt;0);&lt;br /&gt;&lt;br /&gt;     printf("\noctal:  ");&lt;br /&gt;       for(y=x-1;y&gt;=0;y--)&lt;br /&gt; printf("%d",resi[y]);&lt;br /&gt; printf("(8)");&lt;br /&gt;    getch();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void hexadecimal()&lt;br /&gt;{&lt;br /&gt;  /*PROGRAMA QUE CONVIERTE UN NUMERO DECIMAL A BINARIO,EJEMPLO:&lt;br /&gt;      N=2007 ==&gt; HEXADECIMAL(16) ==&gt; 7 D 7 (16)&lt;br /&gt;      COMPILADO EN TURBO C ,POR:MERIDA ALFARO MIGUEL ANGEL*/&lt;br /&gt;&lt;br /&gt;   int num,y=0,x=0,divi,resi[30];&lt;br /&gt;   clrscr();&lt;br /&gt;   printf("DAME UN NUMERO:");&lt;br /&gt;   scanf("%d",&amp;num);&lt;br /&gt;   do{&lt;br /&gt;  divi=num/16;&lt;br /&gt;  resi[x]=num%16;&lt;br /&gt;  num=divi;&lt;br /&gt;  x++;&lt;br /&gt;     }while(num&gt;0);&lt;br /&gt;&lt;br /&gt;     printf("\nhexadecimal:  ");&lt;br /&gt;       for(y=x-1;y&gt;=0;y--)&lt;br /&gt;       {&lt;br /&gt;  if(resi[y]==10)&lt;br /&gt;  printf("A");&lt;br /&gt;  else&lt;br /&gt;  if(resi[y]==11)&lt;br /&gt;  printf("B");&lt;br /&gt;  else&lt;br /&gt;  if(resi[y]==12)&lt;br /&gt;  printf("C");&lt;br /&gt;  else&lt;br /&gt;  if(resi[y]==13)&lt;br /&gt;  printf("D");&lt;br /&gt;  else&lt;br /&gt;  if(resi[y]==14)&lt;br /&gt;  printf("E");&lt;br /&gt;  else&lt;br /&gt;  if(resi[y]==15)&lt;br /&gt;  printf("F");&lt;br /&gt;  else&lt;br /&gt;  printf("%d",resi[y]);&lt;br /&gt;      }&lt;br /&gt;  printf("(16)");&lt;br /&gt;&lt;br /&gt;    getch();&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;void main()&lt;br /&gt;{  int op;&lt;br /&gt;    clrscr();&lt;br /&gt;  do{&lt;br /&gt;    op=menu();&lt;br /&gt;    switch(op)&lt;br /&gt;    {&lt;br /&gt;      case 1:&lt;br /&gt;      binario();&lt;br /&gt;      break;&lt;br /&gt;      case 2:&lt;br /&gt;      octal();&lt;br /&gt;      break;&lt;br /&gt;      case 3:&lt;br /&gt;      hexadecimal();&lt;br /&gt;      break;&lt;br /&gt;      case 4:&lt;br /&gt;      printf("\nsaliendo del programa...........");&lt;br /&gt;     }&lt;br /&gt;    }while(op!=4);&lt;br /&gt;    getch();&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-5193542812394246134?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/5193542812394246134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/5193542812394246134'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/programa-que-convierte-un-numero.html' title='PROGRAMA QUE CONVIERTE UN NUMERO DECIMAL A CUALQUIER SISTEMA NUMERICO.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry><entry><id>tag:blogger.com,1999:blog-2487835791472661588.post-3937351015956388490</id><published>2007-09-21T22:41:00.000-05:00</published><updated>2007-09-21T22:52:33.508-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ING. EN SISTEMAS COMPUTACIONALES'/><title type='text'>SISTEMAS NUMERICOS.</title><content type='html'>&lt;span style="font-weight:bold;"&gt;SISTEMA DE NUMERACIÓN.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Un sistema de numeración es un conjunto de símbolos y reglas de generación que permiten construir todos los números válidos en el sistema. Un sistema de numeración puede representarse como N = S + R donde:&lt;br /&gt;&lt;br /&gt;• N es el sistema de numeración considerado&lt;br /&gt;• S son los símbolos permitidos en el sistema. En el caso del sistema decimal son {0,1...9}; en el binario son {0,1}; en el octal son {0,1...7}; en el hexadecimal son {0,1...9,A,B,C,D,E,F}&lt;br /&gt;• R son las reglas de generación que nos indican qué números son válidos y cuáles son no-válidos en el sistema.&lt;br /&gt;&lt;br /&gt;Estas reglas son diferentes para cada sistema de numeración considerado, pero una regla común a todos es que para construir números válidos en un sistema de numeración determinado sólo se pueden utilizar los símbolos permitidos en ese sistema (para indicar el sistema de numeracíon utilizado se añade como subíndice al número).&lt;br /&gt;Ejemplos:&lt;br /&gt;&lt;br /&gt;•el número 125(10) es un número válido en el sistema decimal, pero el número 12A(10) no lo es, ya que utiliza un símbolo A no válido en el sistema decimal.&lt;br /&gt;•el número 35(8) es un número válido en el sistema octal, pero el número 39(8) no lo es, ya que el símbolo 9 no es un símbolo válido en el sistema octal.&lt;br /&gt;•el número F1E4(16) es un número válido en el sistema hexadecimal, pero el número FKE4(16) no lo es, ya que el símbolo K no es un símbolo válido en el sistema hexadecimal.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;TABLA DE CONTENIDOS:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;•1 Clasificación &lt;br /&gt;*1.1 Teorema Fundamental de la Numeración&lt;br /&gt;•2 Sistema Binario&lt;br /&gt;•3 Sistema Octal&lt;br /&gt;•4 Sistema Hexadecimal&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;CLASIFICACIÓN.&lt;/span&gt; &lt;br /&gt;Los sistemas de numeración usados en la actualidad son ponderados o posicionales. En estos sistemas de numeración el valor de un dígito depende tanto del símbolo utilizado, como de la posición que ése símbolo ocupa en el número.&lt;br /&gt;El número de símbolos permitidos en un sistema de numeración posicional se conoce como base del sistema de numeración. Si un sistema de numeración posicional tiene base b significa que disponemos de b símbolos diferentes para escribir los números, y que b unidades forman una unidad de orden superior.&lt;br /&gt;Podemos ver esto con un ejemplo en el sistema de numeración decimal.&lt;br /&gt;Si contamos desde 0, incrementando una unidad cada vez, al llegar a 9 unidades hemos agotado los símbolos disponibles, y si queremos seguir contando no disponemos de un nuevo símbolo para representar la cantidad que hemos contado. Por tanto añadimos una nueva columna a la izquierda del número, reutilizamos los símbolos de que disponemos, decimos que tenemos una unidad de segundo orden (decena), ponemos a cero las unidades, y seguimos contando.&lt;br /&gt;De igual forma, cuando contamos hasta 99, hemos agotado los símbolos disponibles para las dos columnas; por tanto si contamos (sumamos) una unidad más, debemos poner a cero la columna de la derecha y sumar 1 a la de la izquierda (decenas). Pero la columna de la izquierda ya ha agotado los símbolos disponibles, así que la ponemos a cero, y sumamos 1 a la siguiente columna (centena). Como resultado nos queda que 99+1=100.&lt;br /&gt;Como vemos, un sistema de numeración posicional se comporta como un cuentakilómetros: va sumando 1 a la columna de la derecha y, cuando la rueda de esa columna ha dado una vuelta (se agotan los símbolos), se pone a cero y se añade una unidad a la siguiente columna de la izquierda.&lt;br /&gt;Pero estamos tan habituados a contar usando el sistema decimal que no somos conscientes de este comportamiento, y damos por hecho que 99+1=100, sin pararnos a pensar en el significado que encierra esa expresión.&lt;br /&gt;Tal es la costumbre de calcular en decimal que la inmensa mayoría de la población ni siquiera se imagina que pueden existir otros sistemas de numeración diferentes al de base 10, y tan válidos y útiles como este. Entre esos sistemas se encuentran el de base 2 Sistema binario, de base 8 Sistema octal y el de base 16 Sistema hexadecimal.&lt;br /&gt;Teorema Fundamental de la Numeración [editar]&lt;br /&gt;Este teorema establece la forma general de construir números en un sistema de numeración posicional. Primero estableceremos unas definiciones básicas:&lt;br /&gt;•N: Sistema de numeración&lt;br /&gt;•b: base del sistema de numeración. Número de símbolos permitidos en el sistema.&lt;br /&gt;•d: un símbolo cualquiera de los permitidos en el sistema de numeración&lt;br /&gt;•n: número de dígitos de la parte entera.&lt;br /&gt;•,: coma fraccionaria. Símbolo utilizado para separar la parte entera de un número de su parte fraccionaria.&lt;br /&gt;•k: número de dígitos de la parte decimal.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SISTEMA BINARIO. &lt;/span&gt;&lt;br /&gt;El sistema de numeración más simple que usa la notación posicional es el sistema de numeración binario. Este sistema, como su nombre lo indica, usa solamente dos dígitos (0,1).&lt;br /&gt;Por su simplicidad y por poseer únicamente dos dígitos diferentes, el sistema de numeración binario se usa en computación para el manejo de datos e información. A la representación de un dígito binario se le llama bit (de la contracción binary digit) y al conjunto de 8 bits se le llama byte, así por ejemplo: 110 contiene 3 bits, 1001 contiene 4 y 1 contiene 1 bit. Como el sistema binario usa la notación posicional entonces el valor de cada dígito depende de la posición que tiene en el número, así por ejemplo el número 110101b es: 1*(20) + 0*(21) + 1*(22) + 0*(23) + 1*(24) + 1*(25) = 1 + 4 + 16 + 32 = 53d La computadora está diseñada sobre la base de numeración binaria (base 2). Por eso este caso particular merece mención aparte. Siguiendo las reglas generales para cualquier base expuestas antes, tendremos que: Existen dos dígitos (0 o 1) en cada posición del número. Numerando de derecha a izquierda los dígitos de un número, empezando por cero, el valor decimal de la posición es 2n. Por ejemplo, 11012 (en base 2) quiere decir: 1*(23) + 1*(22) + 0*(21) + 1*(20) = 8 + 4 + 0 + 1 = 1310 asi es esto. Donde 1*(23) quiere decir 1 multiplicado por: 2 elevado a la posicion 3 ... ahora si verdad. Todo lo que se ingresa a la computadora se convierte en números binarios conformados por los dos dígitos 0 y 1 (bits). Por ejemplo, cuando presiona la tecla "A" en su computadora personal, el teclado genera y transmite el número 01000001 a la memoria de la computadora como una serie de pulsos. Los bits 1 se transmiten como voltaje alto, mientras que los bits 0, como voltaje bajo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;SISTEMA OCTAL. &lt;/span&gt;&lt;br /&gt;El sistema de numeración octal es también muy usado en la computación por tener una base que es potencia exacta de 2 o de la numeración binaria. Esta característica hace que la conversión a binario o viceversa sea bastante simple. El sistema octal usa 8 dígitos (0, 1, 2, 3, 4, 5, 6,7) y tienen el mismo valor que en el sistema de numeración decimal. Como el sistema de numeración octal usa la notación posicional entonces para el número 3452.32q tenemos: 2*(80) + 5*(81) + 4*(82) + 3*(83) + 3*(8-1) + 2*(8-2) = 2 + 40 + 4*64 + 64 + 3*512 + 3*0.125 + 2*0.015625 = 2 + 40 + 256 + 1536 + 0.375 + 0.03125 = 1834 + 40625d Entonces, 3452.32q = 1834.40625d El sub índice q indica número octal, se usa la letra q para evitar confusión entre la letra o y el número 0. En informática, a veces se utiliza la numeración octal en vez de la hexadecimal. Tiene la ventaja de que no requiere utilizar otros símbolos diferentes de los dígitos. Es posible que la numeración octal se usara en el pasado en lugar de la decimal, por ejemplo, para contar los espacios interdigitales o los dedos distintos de los pulgares . Es utilizado como una forma abreviada de representar números binarios que emplean caracteres de seis bits. Cada tres bits (medio carácter) es convertido en un único dígito octal. Okta es un término griego que significa 8.&lt;br /&gt;&lt;br /&gt;SISTEMA HEXADECIMAL. &lt;br /&gt;El sistema de numeración hexadecimal, o sea de base 16, (es común abreviar hexadecimal como hex aunque hex significa base seis y no base dieciséis) es compacto y nos proporciona un mecanismo sencillo de conversión hacia el formato binario, debido a esto, la mayoría del equipo de cómputo actual utiliza el sistema numérico hexadecimal. Como la base del sistema hexadecimal es 16, cada dígito a la izquierda del punto hexadecimal representa tantas veces un valor sucesivo potencia de 16, por ejemplo, el número 1234 es igual a: 1*16^3 + 2*16^2 + 3*16^1 + 4*16^0 Lo que da como resultado: 4096 + 512 + 48 + 4 = 4660&lt;br /&gt;Cada dígito hexadecimal puede representar uno de dieciséis valores entre 0 y 1510. Como sólo tenemos diez dígitos decimales, necesitamos inventar seis dígitos adicionales para representar los valores entre 1010 y 1510. En lugar de crear nuevos símbolos para estos dígitos, utilizamos las letras A a la F. La conversión entre hexadecimal y binario es sencilla, considere la siguiente tabla: Su uso actual está muy vinculado a la informática y ciencias de la computación. Esto se debe a que un dígito hexadecimal representa cuatro dígitos binarios: 4 bits = 1 nibble; por tanto, dos dígitos hexadecimales representan ocho dígitos binarios (8 bits = 1 byte que, como es sabido, es la unidad básica de almacenamiento de información). Dado que el sistema usual de numeración es de base decimal y, por ello, sólo se dispone de diez dígitos, se adoptó la convención de usar las seis primeras letras del alfabeto latino para suplir los dígitos que nos faltan: A = 10, B = 11, C = 12, D = 13, E = 14 y F = 15. Como en cualquier sistema de numeración posicional, el valor numérico de cada dígito es alterado dependiendo de su posición en la cadena de dígitos, quedando multiplicado por una cierta potencia de la base del sistema, que en este caso es 16. Por ejemplo: 3E0,A16 = 3×162 + E×161 + 0×160 + A×16-1 = 3×256 + 14×16 + 0×1 + 10×0,0625 = 992,625. El sistema hexadecimal actual fue introducido en el ámbito de la computación por primera vez por IBM en 1963. Una representación anterior, con 0–9 y u–z, fue usada en 1956 por la computadora Bendix G-15 y algunas computadoras modernas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2487835791472661588-3937351015956388490?l=elrincondemerida.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3937351015956388490'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2487835791472661588/posts/default/3937351015956388490'/><link rel='alternate' type='text/html' href='http://elrincondemerida.blogspot.com/2007/09/sistemas-numericos.html' title='SISTEMAS NUMERICOS.'/><author><name>Hatake Kakashi</name><uri>http://www.blogger.com/profile/02521183441009346624</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_BfXOb8WZwPI/TAQF8dz8awI/AAAAAAAAAbs/9BDF8-HjUGg/S220/tux-kakashi.png'/></author></entry></feed>
