{"id":55,"date":"2013-02-21T12:16:06","date_gmt":"2013-02-21T12:16:06","guid":{"rendered":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/?p=55"},"modified":"2013-03-04T12:30:09","modified_gmt":"2013-03-04T12:30:09","slug":"redireccion-de-la-entradasalida","status":"publish","type":"post","link":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/redireccion-de-la-entradasalida\/","title":{"rendered":"Redirecci\u00f3n de la entrada\/salida"},"content":{"rendered":"<p><\/p>\n<h3>Redirecci\u00f3n de la salida<\/h3>\n<p>La manera que hemos visto de utilizar el comando cat no parece demasiado \u00fatil. Pero, \u00bfy si en lugar de escribir lo que introducimos por teclado en la pantalla lo pudi\u00e9ramos escribir en un fichero? Para ello podemos utilizar los mecanismos de redirecci\u00f3n de la salida que proporciona Linux, que permiten cambiar el dispositivo de salida est\u00e1ndar.<\/p>\n<p>Para redirigir la salida est\u00e1ndar utilizaremos el s\u00edmbolo &#8216;&gt;&#8217; seguido de un nombre de fichero. Como ejemplo, podemos introducir el comando\u00a0<em>cat<\/em>\u00a0como sigue y los textos que se muestran:<\/p>\n<pre>cat &gt; telefonos.txt\r\nLuis Terreros 5553251\r\nMateo Guerricer 5559082\r\nGema Pellon 5558727\r\nLuis Terico 5550255\r\nCarlos Calzado 5550178<\/pre>\n<p>Tras finalizar la ejecuci\u00f3n con CTRL-D, podemos introducir el comando <em>ls<\/em> para comprobar que, efectivamente, se ha creado un fichero llamado telefonos.txt. La redirecci\u00f3n le ha indicado al comando <em>cat<\/em> que escriba la salida en este fichero en lugar de hacerlo en pantalla. Como resultado, el fichero contendr\u00e1 el listado que hemos introducido. Para comprobarlo, podemos utilizar el mismo comando <em>cat<\/em> de la siguiente forma:<\/p>\n<pre>cat telefonos.txt\r\n Luis Terreros 5553251\r\n Mateo Guerricer 5559082\r\n Gemma Pellon 5558727\r\n Luis Terico 5550255\r\n Carlos Calzado 5550178<\/pre>\n<p>Como vemos el comando\u00a0<em>cat<\/em>\u00a0puede utilizarse de manera que tome como argumento un fichero a visualizar en lugar de la entrada est\u00e1ndar.<\/p>\n<p style=\"padding-left: 30px;\"><span style=\"color: #888888;\">El m\u00e9todo de redirecci\u00f3n que hemos visto siempre crea un fichero nuevo para recoger la salida y, en caso de que ya exista uno con el mismo nombre, lo borra primero. Si necesitamos redirigir la salida hacia un fichero ya existente sin borrar su contenido, podemos usar el s\u00edmbolo &#8216;&gt;&gt;&#8217; para indicar que la redirecci\u00f3n debe hacerse a\u00f1adiendo el\u00a0 nuevo resultado detr\u00e1s del contenido existente.<\/span><\/p>\n<h3>Redirecci\u00f3n de la entrada<\/h3>\n<p>De forma similar a como se ha visto para la salida est\u00e1ndar, es posible redireccionar tambi\u00e9n la entrada utilizando el s\u00edmbolo &#8216;&lt;&#8216;.\u00a0 Por ejemplo, podr\u00edamos proporcionarle al comando cat el contenido del fichero telefonos.txt como entrada de la siguiente manera:<\/p>\n<pre>cat &lt; telefonos.txt<\/pre>\n<p>Aunque hemos visto que no es necesario ya que este comando puede aceptar como argumento un nombre de fichero, hay otros comandos que s\u00f3lo est\u00e1n dise\u00f1ados para leer y escribir en los dispositivos est\u00e1ndar. Un ejemplo es el comando\u00a0<em>tr<\/em>\u00a0que permite transformar cadenas de texto de diversas formas. Si queremos cambiar todas los caracteres del texto de telefonos.txt de min\u00fasculas a may\u00fasculas podemos hacer lo siguiente:<\/p>\n<pre>tr [:lower:] [:upper:] &lt; telefonos.txt\r\n LUIS TERREROS 5553251\r\n MATEO GUERRICER 5559082\r\n GEMA PELLON 5558727\r\n LUIS TERICO 5550255\r\n CARLOS CALZADO 5550178<\/pre>\n<p>El texto entre comillas es un argumento del comando\u00a0<em>tr<\/em>\u00a0que simplemente le indica que convierta las min\u00fasculas en may\u00fasculas.<\/p>\n<p>Finalmente, podemos ilustrar la utilizaci\u00f3n combinada de ambas formas de redirecci\u00f3n completando el ejemplo anterior para que deje su salida en un fichero llamado <em>telef-may.txt<\/em>:<\/p>\n<pre>tr [:lower:] [:upper:] &lt; telefonos.txt &gt; telef-may.txt<\/pre>\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Redirecci\u00f3n de la salida La manera que hemos visto de utilizar el comando cat no parece demasiado \u00fatil. Pero, \u00bfy si en lugar de escribir lo que introducimos por teclado en la pantalla lo pudi\u00e9ramos escribir en un fichero? Para ello podemos utilizar los mecanismos de redirecci\u00f3n de la salida que proporciona Linux, que permiten &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/multimedia.uoc.edu\/blogs\/linux\/redireccion-de-la-entradasalida\/\" class=\"more-link\">Seguir leyendo<span class=\"screen-reader-text\"> \u00abRedirecci\u00f3n de la entrada\/salida\u00bb<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-55","post","type-post","status-publish","format-standard","hentry","category-gnulinux","entry"],"_links":{"self":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts\/55","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/comments?post=55"}],"version-history":[{"count":5,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts\/55\/revisions"}],"predecessor-version":[{"id":66,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/posts\/55\/revisions\/66"}],"wp:attachment":[{"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/media?parent=55"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/categories?post=55"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/multimedia.uoc.edu\/blogs\/linux\/wp-json\/wp\/v2\/tags?post=55"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}