{"id":220,"date":"2009-02-11T02:18:56","date_gmt":"2009-02-11T07:18:56","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/programando\/?p=220"},"modified":"2009-02-11T13:04:10","modified_gmt":"2009-02-11T18:04:10","slug":"introduccion-a-shell-script-en-linuxunix","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/programando\/introduccion-a-shell-script-en-linuxunix\/","title":{"rendered":"Introducci\u00f3n a Shell Script en Linux\/Unix"},"content":{"rendered":"<p>Saludos a todos mis lectores \ud83d\ude42<\/p>\n<p>He decidido crear una secci\u00f3n dedicada a la creaci\u00f3n de Scripts sobre la shell de sistemas basados en Unix, los cuales son muy importantes ya que nos ayudar\u00e1n mucho en la administraci\u00f3n de estos sistemas.<\/p>\n<p>Espero les sea de utilidad...<\/p>\n<p><strong>Manos a la obra<\/strong><\/p>\n<p><em><strong>Conceptos b\u00e1sicos<\/strong><\/em><\/p>\n<p>Antes de entrar en el entorno de programaci\u00f3n Unix es necesario tener conceptos b\u00e1sicos sobre estos sistemas operativos y el manejo de la consola.<\/p>\n<p><strong>\u00bfQue es Unix?<\/strong><\/p>\n<p>Unix es el n\u00facleo de un sistema operativo de tiempo compartido, un programa que controla los recursos de un equipo y los asigna entre los usuarios. Unix no solo abarca el n\u00facleo, sino tambi\u00e9n todos los programas esenciales para el manejo del mismo como: editores, compiladores, y lenguajes de comandos, etc.<\/p>\n<p><a href=\"http:\/\/es.wikipedia.org\/wiki\/Unix\">Aprender m\u00e1s<\/a><\/p>\n<p><strong>\u00bfQu\u00e9 es la Shell?<\/strong><\/p>\n<p>Es un programa que sirve de interfaz de comunicaci\u00f3n entre el usuario y el sistema operativo que espera \u00f3rdenes escritas por el usuario.<\/p>\n<p><a href=\"http:\/\/es.wikipedia.org\/wiki\/L%C3%ADnea_de_comandos\">Aprender m\u00e1s<\/a><\/p>\n<p><strong>Sistema de archivos en Unix<\/strong><\/p>\n<p>En Unix\u00a0 todo funciona a base de archivos, todo lo que existe en Unix son archivos (directorios, drivers, ficheros, etc).<\/p>\n<p>El sistema de archivos Unix se organiza de manera Jer\u00e1rquica.<\/p>\n<p>En Unix los archivos tienen asociado un nombre, contenido, ubicaci\u00f3n y datos como due\u00f1o, tama\u00f1o, fecha de modificaci\u00f3n, etc.<\/p>\n<p>Un directorio en Unix es un archivo que contiene informaci\u00f3n de otros archivos, ya que el sistema de archivos un directorio es una ubicaci\u00f3n que puede almacenar archivos y otros directorios.<\/p>\n<p>En los sistemas Unix todo es contenido por el directorio ra\u00edz <strong>\/<\/strong>. Este directorio es el de m\u00e1s alta jerarqu\u00eda.<\/p>\n<p><em><strong>Rutas<\/strong><\/em><\/p>\n<p>Las <a href=\"http:\/\/es.wikipedia.org\/wiki\/Ruta_(inform%C3%A1tica)\">rutas<\/a> son un m\u00e9todo de referenciar archivos y directorios en un sistema de archivos las cuales se\u00f1alan la ubicaci\u00f3n exacta de los mismos.<\/p>\n<p>La forma de recorrer un <a href=\"http:\/\/www.educarex.es\/mediawiki\/index.php\/%C3%81rbol_de_Directorios\">\u00e1rbol de directorios<\/a> en Unix se lo hace directorio a directorio separ\u00e1ndolos con la barra invertida \"\/\".<\/p>\n<p>Existen 2 formas de representar rutas en Unix, de manera absoluta y relativa.<\/p>\n<p><em><strong>Ruta absoluta:<\/strong> <\/em>Se\u00f1ala la posici\u00f3n de un archivo o directorio desde el directorio ra\u00edz<em>.<\/em><\/p>\n<p><em>Ejemplo:<\/em> \/home\/leo\/Escritorio\/carpeta1\/<\/p>\n<p><em><strong>Ruta Relativa:<\/strong><\/em> Se\u00f1ala la posici\u00f3n de un archivo o directorio desde la ubicaci\u00f3n actual.<\/p>\n<p>Ejemplo:<\/p>\n<p>Nos encontramos en<strong> \/home<\/strong> \u00bfcu\u00e1l es la ruta relativa a <strong>\/home\/leo\/Escritorio\/carpeta1<\/strong>?<\/p>\n<p>La ruta relativa es <strong>leo\/Escritorio\/carpeta1<\/strong><\/p>\n<p>En las rutas relativas se usan dos representaciones\u00a0 especiales a directorios <strong>.\/<\/strong> y <strong>..\/<\/strong>, el primero (<strong>.\/<\/strong>) hace referencia al directorio actual y el segundo (<strong>..\/<\/strong>) hace referencia al directorio superior. Veamos algunos ejemplos:<\/p>\n<p>Estamos ubicados en <strong>\/home\/leo\/Escritorio\/carpeta1 \u00bf<\/strong>cu\u00e1l es la ruta relativa a <strong>\/home\/leo\/Escritorio <\/strong>y\u00a0 a <strong>\/home\/leo<\/strong>?<\/p>\n<p>La ruta relativa a <strong>\/home\/leo\/Escritorio <\/strong>es <strong>..\/<\/strong><\/p>\n<p>La ruta relativa a<strong>\/home\/leo <\/strong>es<strong> ..\/..\/<br \/>\n<\/strong><\/p>\n<p>N\u00f3tese que en el caso de la ruta relativa a <strong>\/home\/leo <\/strong>desde<strong> <\/strong><strong>\/home\/leo\/Escritorio\/carpeta1 <\/strong>\u00e9sta fue <strong>..\/..\/ <\/strong>porque se indica que es el directorio superior al directorio superior de <strong>carpeta1<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Saludos a todos mis lectores \ud83d\ude42 He decidido crear una secci\u00f3n dedicada a la creaci\u00f3n de Scripts sobre la shell de sistemas basados en Unix, los cuales son muy importantes ya que nos ayudar\u00e1n mucho en la administraci\u00f3n de estos sistemas. Espero les sea de utilidad... Manos a la obra Conceptos b\u00e1sicos Antes de entrar [&hellip;]<\/p>\n","protected":false},"author":385,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[4042],"tags":[4039,4064,2514,4041,855,866,3780,4040,4037,4036,698,4038],"class_list":["post-220","post","type-post","status-publish","format-standard","hentry","category-shell-script","tag-absoluta","tag-arbol-de-directorio","tag-archivos","tag-comandos","tag-directorio","tag-linux","tag-relativa","tag-ruta","tag-script","tag-shell","tag-sistemas","tag-unix"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts\/220","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/users\/385"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/comments?post=220"}],"version-history":[{"count":3,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts\/220\/revisions"}],"predecessor-version":[{"id":223,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/posts\/220\/revisions\/223"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/media?parent=220"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/categories?post=220"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/programando\/wp-json\/wp\/v2\/tags?post=220"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}