aboutsummaryrefslogtreecommitdiffstats
path: root/_site/2021/03/24/aprende-a-usar-la-terminal.html
blob: 7b3f1b38510dfb788c56bf1e9d2e947bea001bc5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<!DOCTYPE html><html lang="en" ><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="Jekyll v4.2.0" /><meta property="og:title" content="Aprende a usar la terminal" /><meta property="og:locale" content="en_US" /><meta name="description" content="Ejercicios" /><meta property="og:description" content="Ejercicios" /><link rel="canonical" href="wiki.texto-plano.xyz/2021/03/24/aprende-a-usar-la-terminal" /><meta property="og:url" content="wiki.texto-plano.xyz/2021/03/24/aprende-a-usar-la-terminal" /><meta property="og:site_name" content="Wiki Texto-Plano" /><meta property="og:type" content="article" /><meta property="article:published_time" content="2021-03-24T21:52:00-03:00" /><meta name="twitter:card" content="summary" /><meta property="twitter:title" content="Aprende a usar la terminal" /><meta name="twitter:site" content="@" /> <script type="application/ld+json"> {"description":"Ejercicios","@type":"BlogPosting","url":"wiki.texto-plano.xyz/2021/03/24/aprende-a-usar-la-terminal","headline":"Aprende a usar la terminal","dateModified":"2021-03-24T21:52:00-03:00","datePublished":"2021-03-24T21:52:00-03:00","mainEntityOfPage":{"@type":"WebPage","@id":"wiki.texto-plano.xyz/2021/03/24/aprende-a-usar-la-terminal"},"@context":"https://schema.org"}</script><title> Aprende a usar la terminal - Wiki Texto-Plano</title><link rel="shortcut icon" href="/favicon.ico"><link rel="alternate" type="application/atom+xml" title="Wiki Texto-Plano" href="/atom.xml"><link rel="alternate" type="application/json" title="Wiki Texto-Plano" href="wiki.texto-plano.xyz/feed.json" /><link rel="sitemap" type="application/xml" title="sitemap" href="/sitemap.xml" /><style> *,:after,:before{box-sizing:border-box;background-color:inherit;color:inherit;margin:0;padding:0}body{font-family:monospace;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;line-height:1.5;font-size:1rem;color:#16171a}.center-image{margin:0 auto;display:block}nav ul{border-right:1px solid #edf2f7}a{color:#000;text-decoration-skip-ink:auto;text-decoration:underline}pre{margin:.5rem 0;padding:.5rem}.post p{margin:.5rem 0}.post h1,.post h2,.post h3,.post h4{margin:1rem 0}.post h2:first-child,.project h2:first-child,.photo h2:first-child{margin-top:0}.meta{margin:2rem 0}code,pre{background:#ecedee}code{padding:.1rem}pre code{border:none}pre{padding:1rem;overflow-x:auto}img{max-width:100%}hr{background:#000;height:1px;border:0}header{flex-basis:10rem;flex-grow:1;position:relative}header a{text-decoration:none}header li{margin-bottom:.2rem;text-align:right;margin-right:2rem}header a.active{font-weight:bold}header,section{padding:1rem}blockquote{font-style:italic;border-left:5px solid #ececec;padding-left:1rem}h1,h2,h3,h4,h5{line-height:1;margin:1rem 0;font-weight:600}section h1:first-child{margin-top:0}strong,b{font-weight:bold}.photos ul{list-style:none}.photos li{margin-bottom:1.5rem}.photo picture,.project picture{margin-bottom:0.5rem}.posts ul,header ul{list-style:none}.posts li{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.posts li a,.posts li div,.projects li a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-decoration:none}.posts li time,.projects li time{padding-left:1rem;white-space:nowrap;font-variant-numeric:tabular-nums}main{display:flex;flex-wrap:wrap;max-width:60rem;margin:2rem auto;padding:1rem}@media screen and (max-width: 45rem){header li{display:inline;margin-right:1rem}.logo{padding-bottom:1rem}header ul{border-bottom:1px solid #edf2f7;padding-bottom:2rem}nav ul{border-right:0px}.photos ul{margin-top:0.5rem}}section{flex-basis:0;flex-grow:999;min-width:70%;display:flex;flex-direction:column}figcaption{font-size:smaller}</style></head><body><main role="main"><header role="banner"> <!--<h1 class="logo">Wiki Texto-Plano</h1>--><nav role="navigation"><ul><li><a href="/" >Wiki</a></li><li><a href="https://texto-plano.xyz" >~tp</a></li><li><a href="/buscar" >Buscar</a></li><li><a href="/atom.xml" >Rss</a></li></ul></nav></header><section class="post"><h2>Aprende a usar la terminal</h2><h2 id="ejercicios">Ejercicios</h2><p>¡Recibe una cordial bienvenida!</p><p>Texto-plano.xyz es una comunidad de cómputo público en castellano. Sus miembros hacen uso a distancia de una computadora muy pequeña, provista del sistema operativo OpenBSD, similar a UNIX.</p><p>Debes operar este entorno por medio de una <em>Interfaz de Línea de Comandos (CLI)</em>. Esto significa que normalmente teclearás tus órdenes en lugar de manejar aplicaciones gráficas.</p><p>Si nunca has usado una <em>CLI</em>, no hay problema. Estos ejercicios sencillos y explicados, te acompañarán en tu aprendizaje de los rudimentos básicos para hacer la mayoría de los trabajos que desees.</p><h3 id="la-shell-o-intérprete-de-comandos">La Shell o “Intérprete de Comandos”</h3><p>No bien accedas remotamente con tu terminal al entorno texto-plano.xyz, se te mostrará un mensaje de bienvenida con instrucciones simples, ¡y ya estarás listo para operar!.</p><p>Para ello usarás el “intérprete de órdenes”, o en la jerga, una <em>shell</em>.</p><p>Esta shell es un programa capaz reaccionar a las instrucciones que le proporcionas, llamadas “órdenes” o “comandos”. La shell también muestra en tu pantalla una señal llamada <em>prompt</em>, que demuestra que el sistema está a tu disposición.</p><p>El prompt puede aparecer de la siguiente manera:</p><pre>fulano@texto-plano.xyz:~$</pre><p>(Esto significa que eres el usuario “fulano”, en el entorno “texto-plano.xyz”. El signo $ indica el final del prompt).</p><h3 id="ejercicio-1-comandos-básicos">Ejercicio 1: Comandos básicos</h3><h4 id="quién-soy-cómo-me-llamo">¿Quién soy? ¿Cómo me llamo?</h4><p>Prueba introducir tu primer órden para practicar.</p><p>Nota: Los comandos que debes utilizar se indican en <strong>negrita</strong>. Puedes teclearlos o “copiar y pegarlos” en tu terminal.</p><p>Teclea en la terminal el comando:</p><p><strong>whoami</strong></p><p>…y presiona la <strong>tecla Intro</strong> para enviar la órden. Se transmitirá este comando al intérprete de órdenes remoto, este lo interpretará, cumplirá y devolverá el resultado en tu terminal. Como consecuencia aparecerá en tu pantalla una nueva línea con tu <em>nombre de usuario</em>.</p><p>¡Felicitaciones! Ahora sabes cómo te llamas. Serás conocido en nuestro entorno con este nombre de usuario, aunque en estos ejercicios usaremos el nombre de usuario “fulano” a título ilustrativo</p><p>. :)</p><p>Texto-plano es un sistema de cómputo multiusuario y público. Puedes saber quién más está conectado al centro de cómputo en este preciso momento, introduciendo otra orden:</p><p><strong>w</strong></p><p>¡No olvides presionar la <strong>tecla Intro</strong>! El sistema podría indicar qué usuarios están conectados, (columna <em>USER</em>) y qué están haciendo (columna <em>WHAT</em>).</p><pre> 6:01PM  up 51 days, 17:56, 8 users, load averages: 0.02, 0.07, 0.07
USER    TTY FROM            LOGIN@  IDLE WHAT
mengano p0 32.43.69.74     Tue04AM  1day -bash 
sultano pg 120.12.199.47    3:30PM  2:30 -bash 
fulano       130.123.10.90  9:48AM     0 w
mengana   po 124.24.55.11   5:01PM     0 wordgrinder
</pre><p>De los errores, se aprende. Intenta cometer un error a propósito para aprender; en lugar de utilizar el comando w (con minúscula), introdúce el comando <strong>W</strong> (con mayuúscula):</p><p><strong>W</strong></p><p>El sistema podría indicarnos:</p><pre>

&gt; bash: comando no encontrado: W

</pre><p>Esto significa que <strong>los entornos similares a UNIX son sensibles al uso incorrecto de las mayúsculas o minúsculas</strong>. No es lo mismo <em>w</em> (un comando existente y válido) que <em>W</em> (un comando inexistente). Procura ser cuidadoso con el uso de mayúsculas y minúsculas en los nombres de los comandos, así también como los ficheros, y muy especialmnente las contraseñas.</p><h2 id="directorios-y-archivos">Directorios y archivos</h2><p>Texto-plano.xyz se basa en un <em>sistema de archivado</em> formado por una estructura de directorios. Deberás conocer su funcionamiento básico para ser efectivo, y a ello dedicaremos los siguientes ejercicios.</p><p>La estructura de directorios tiene forma de árbol. En su base se encuentra un directorio maestro llamado “raíz”. De su tronco, se desprenden varias “ramas” (directorios). A su vez estos directorios pueden contener múltiples ramas más pequeñas (subdirectorios).</p><p>Cada directorio puede contener tanto otros directorios como también archivos.</p><p>Para conocer en qué directorio te encuentras en cualquier momento, ingresa el comando:</p><p><strong>pwd</strong></p><p>Por ejemplo, ahora podrías encontrarte en tu directorio de usuario:</p><pre>/home/fulano</pre><h4 id="directorio-home">Directorio /home</h4><p>El directorio <em>/home</em> contiene los directorios de todos usuarios de texto-plano.xyz, incluyendo el tuyo propio, nomenclado según tu propio nombre de usuario.</p><p>El directorio de usuario (por ejemplo <em>/home/fulano</em> ) es el espacio de disco que los miembros disponen dentro de texto-plano.xyz. Tu directorio de usuario puede abreviarse con el caracter de tilde “<strong>~</strong>”.</p><blockquote><p>(Nota: El tilde puedes escribirlo presionando <strong>AltGr+4</strong> en los teclados de distribución española).</p></blockquote><h3 id="ejercicio-2-listar-el-contenido-de-directorios-con-ls">Ejercicio 2: Listar el contenido de directorios con ls</h3><p>Comprueba el contenido de tu directorio donde estás localizado en este momento. Para ello ingresa:</p><p><strong>ls</strong></p><p>El sistema te mostrará un listado con el contenido del directorio donde estés localizado. Si estás en tu directorio <em>/home/fulano</em> podría indicar un contenido que incluya esto:</p><pre>

&gt; MailDir/  public_html/

</pre><p>Procede a listar ahora el contenido del directorio <em>/home</em>, el cual se utiliza para almacenar los directorios de los usuarios de texto-plano.xyz. Podrás hacerlo específicandolo como un sufijo al comando ls, de esta manera:</p><p><strong>ls /home</strong></p><blockquote><p>Nota: Ten en cuenta que si tipeas el comando <strong>ls home</strong> en lugar de <strong>ls /home</strong>, el intérprete considerará que le estás ordenando listar <em>un archivo</em> llamado home, y no el contenido del <em>directorio</em> /home. Recuerda, la / especifica al intérprete de comandos que el pedido es un directorio, y que se encuentra en el directorio raiz de la estructura de directorios.</p></blockquote><p>También podrás listar el contenido del directorio raíz del sistema, la cual es representado por la <em>/</em>.</p><p>Introduce el comando:</p><p><strong>ls /</strong></p><p>…y el sistema informará ahora el contenido general del directorio raíz.</p><pre>altroot/                                      harfbuzz-2.7.2_writes_to_HOME/
at-spi2-core-2.36.1_writes_to_HOME/           home/
atk-2.36.0_writes_to_HOME/                    lost+found/
bin/                                          mnt/
boot                                          pango-1.46.2_writes_to_HOME/
bsd*                                          pub/
bsd.booted*                                   root/
bsd.rd                                        sbin/
bsd.sp                                        strfile*
dev/                                          sys@
etc/                                          tmp/
gdk-pixbuf-2.40.0_writes_to_HOME/             usr/
gobject-introspection-1.64.1_writes_to_HOME/  var/</pre><blockquote><p>Nota: Ten presente que estas “ramas” o directorios del sistema contienen distintos aspectos organizativos del mismo. El administrador de texto-plano.xyz suele moverse en estos directorios.</p></blockquote><h3 id="ejercicio-3-cambiar-de-directorio-cd">Ejercicio 3: Cambiar de Directorio: cd</h3><p>Cambiarás tu posición en la estructura de directorios a fin de trabajar en un directorio específico. Sólo puedes estar posicionado en un directorio a la vez.</p><p>Para cambiar de directorio usa el comando <strong>cd</strong> seguido del nombre del directorio al que te deseas desplazar.</p><p>Cambia tu localización al directorio <em>/usr</em>:</p><p><strong>cd /usr</strong></p><p>Este directorio de sistema llamado <em>/usr</em> contiene una serie de aplicaciones de usuario que utiliza el administrador del sistema. Puedes listar su contenido ahora con <strong>ls</strong>.</p><p>Puedes volver a tu directorio individual <em>/home/fulano</em> mediante la abreviatura <strong>~</strong>. Esto es muy conveniente:</p><p><strong>cd ~</strong></p><p>¡Genial! Has aprendido que la ruta <em>/home/usuario</em> es tu propio directorio de usuario, y que puedes volver a ella rápidamente mediante el comando <strong>cd ~</strong>. El símbolo del tilde <strong>~</strong> es importante pues te avita tener que escribir la ruta <em>/home/usuario</em>.</p><h3 id="ejercicio-4-crear-directorios-con-mkdir">Ejercicio 4: Crear Directorios con mkdir</h3><p>Un directorio puede contener muchos archivos diferentes en su interior, y te permitirá organizar mejor tu entorno. Sólo puedes crear directorios dentro de tu directorio <em>/home</em> personal.</p><p>Puedes crear un directorio usando el comando <strong>mkdir</strong>, seguido por el nombre del directorio que quieres crear.</p><p>En este ejercicio, crearás un único directorio de trabajo llamado <em>temporal</em>, el cual estará localizado dentro de tu directorio /home de usuario (“~”). Puedes hacerlo introduciendo el comando:</p><p><strong>mkdir ~/temporal</strong></p><p>Los comandos UNIX te permiten ahorrar tiempo usando múltiples directorios o archivos.</p><p>Por ejemplo, crea tres subdirectorios de práctica a la vez localizados dentro del directorio ~/temporal. A tal fin se separan las “ramas” de la ruta mediante la barra /. Utiliza entonces el comando:</p><p><strong>mkdir ~/temporal/cartas ~/temporal/cuentos ~/temporal/poemas</strong></p><h4 id="tutoral-desplazarnos-en-la-estructura">Tutoral: Desplazarnos en la estructura.</h4><p>En este caso, cambia tu posición al directorio llamado “temporal” que creamos dentro de nuestro directorio de usuario.</p><p><strong>cd ~/temporal/</strong></p><p>Podrás comprobar que te encuentras dentro del directorio temporal ingresando nuevamente el comando <strong>pwd</strong>.</p><pre>/home/fulano/temporal</pre><p>Muchas shells también indican el directorio actual en el mismo prompt, lo que permite saber en todo momento en que rama del árbol de directorio estamos localizaados, y suelen hacer innecesario utilizar el comando pwd. Por ejemplo, podría indicarnos:</p><pre>**/home/usuario/temporal**</pre><p>…o bien:</p><pre>~/temporal/</pre><p>Al pedir un listado del contenido del directorio con <strong>ls</strong>, le sistema presentará el contenido del directorio donde estás asentado. Si estás en el directorio <em>~/temporal/</em>, podría indicarte:</p><pre>cartas/  cuentos/  poemas/</pre><p>Posicionado en el directorio ~/temporal, ilsta ahora el contenido de tu directorio de usuario <em>/home/fulano</em>. Para ello puedes usar la abreviatura ~.</p><p><strong>ls ~</strong></p><p>…y el sistema te podría presentar ahora:</p><pre>MailDir/  public_html/  temporal/</pre><p>Para retroceder un nivel en el árbol de directorios, se usa el comando **cd .. **</p><p>Por lo tanto, si estabas en /home/fulano/temporal e ingresas **cd .. **, serás transportado a /home/fulano.</p><p>¡Podrás ahora elegir qué te conviene mas: si listar directorios o moverte a ellos, o moverte a los directorios para luego listarlos. Ambas formas de trabajar son válidas.</p><p>Por ejemplo, asbiendo que el directorio temporal está dentro de tu /home, sin importar cual sea tu directorio actual, siempre puedes listarlo con:</p><p><strong>ls ~/temporal</strong></p><p>O bien podrías cambiar tu posicionamiento actual a ~/temporal y luego listarlo:</p><p><strong>cd ~/temporal</strong></p><p><strong>ls</strong></p><p>Ya has aprendido los rudimentos de los directorios, cómo ingresar a ellos y cómo moverte en el árbol de directorios.</p><h3 id="ejercicio-5-crear-archivos-con-touch">Ejercicio 5: Crear archivos con touch</h3><p>Cada archivo en el sistema tiene un nombre, y opcionalmente puede tener una extensión descriptiva.</p><p>Debes tener en cuenta una regla fundamental: no pueden existir dos archivos con el mismo nombre dentro el mismo directorio.</p><p>Dentro de tu directorio <em>/temporal</em>, crea cinco archivos de prueba llamados <em>prueba1.txt</em>, <em>prueba2.txt</em>, <em>prueba3.txt prueba4.txt</em> y <em>prueba5.txt</em>.</p><p>Una forma posible pero ineficiente sería ordenar:</p><p><strong>touch /home/usuario/temporal/prueba1.txt</strong></p><p>…y repetir el proceso hasta el archivo <em>prueba5.txt</em>.</p><p>Pero escribir eso es tedioso. Simplemente usa <strong>cd</strong> para cambiar al directorio temporal:</p><p><strong>cd ~/temporal/</strong></p><p>…y a continuación crea los cuatro archivos que faltan, de una sola vez, con el comando:</p><p><strong>touch prueba2.txt prueba3.txt prueba4.txt prueba5.txt</strong></p><p>Como ves, si estás localizado dentro de un directorio, no es necesario escribir toda la ruta.</p><p>Ten en cuenta que si ahora introduces el comando <strong>ls</strong>, recibirás un listado del directorio donde te encuentras (~/termporal), informando el contenido:</p><pre>cartas/   poemas/      prueba2.txt  prueba4.txt
cuentos/  prueba1.txt  prueba3.txt  prueba5.txt</pre><h3 id="ejercicio-6-copiar-con-cp">Ejercicio 6: Copiar con cp</h3><p>En ocasiones puede ser útil copiar un archivo o directorio (tanto aislado como completo) en otro lugar.</p><p>Podremos realizar copias de un archivo con el comando <strong>cp</strong>.</p><p>Supongamos que queremos copiar el archivo llamado prueba5.txt en otro archivo llamado prueba5.txt.copia, usamos:</p><p><strong>cp prueba5.txt prueba5.txt.copia</strong></p><p>Copia ahora el fichero <em>prueba4.txt</em> dentro del directorio <em>poemas/</em>. Puedes usar el comando:</p><p><strong>cp prueba4.txt poemas/corazon.txt</strong></p><p>También puedes copiar directorios:</p><p><strong>cp poemas/ poemas_copiados/</strong></p><p>Y podrás copiar directorios con sus contenidos, usando la opción <strong>-r</strong>:</p><p><strong>cp -r cartas/ cartas_copiadas/</strong></p><h3 id="ejercicio-7-mover-o-renombrar-con-mv">Ejercicio 7: Mover o renombrar con mv</h3><p>En un entorno ideal, los archivos o directorios estarían donde los queremos y necesitamos. Pero esto no siempre es así.</p><p>Los sistemas UNIX utilizan el comando <strong>mv</strong> para mover o renombrar un archivo. Se usa la sintáxis:</p><p><strong>mv origen destino</strong></p><p>Por ejemplo renombra el archivo prueba1.txt para que se llame <em>carta_abuelo.txt</em> mediante el comando:</p><p><strong>mv prueba1.txt carta_abuelo.txt</strong></p><p>También puedes usar el comando para cambiar de directorio el fichero. Por ejemplo:</p><p><strong>mv carta_abuelo.txt cartas/</strong></p><p>Ten en cuenta que la / es importante en UNIX. Indica que debes mover el archivo “carta_abuelo.txt” al interior de un directorio llamado cartas/.</p><p>Pero si olvidas la / en el directorio cartas/ y sólo indicas</p><p><strong>mv carta_abuelo.txt cartas</strong></p><p>…pues el intérprete buscará un archivo llamado “carta_abuelo.txt” y le cambiará el nombre a “cartas”. ¡Recuerda!, la / al final de un nombre indica la diferencia entre un directorio y un archivo.</p><p>Renombra ahora el archivo prueba3.txt a cenicienta.txt y muévelo al directorio cuentos/ usando un único comando:</p><p><strong>mv prueba3.txt cuentos/cenicienta.txt</strong></p><h3 id="ejercicio-8-borrar-con-rm">Ejercicio 8: Borrar con rm</h3><p>Si no necesitas un archivo o directorio, puedes borrarlo. Esto ahorrará recursos de cómputo en el sistema, que podremos disfrutar entre todos.</p><p>Puedes borrar archivos dentro de un directorio mediante el comando <strong>rm</strong> (“remover”).</p><p>En este tutorial, finalizaremos eliminando los archivos y directorios ya creados. Desplázate al directorio <em>~/temporal</em> y borra el archivo <em>prueba5.txt.copia</em> con:</p><p><strong>cd ~/temporal</strong></p><p><strong>rm prueba5.txt.copia</strong></p><p>Podrías repetir esto para borrar el resto de los archivos, pero podrías también usar el comodín <strong>?</strong> para indicar “todo tipo de archivo que incie con prueba, contenga un caracter cualquiera, y termine con .txt”. Esto se hace de la siguiente manera:</p><p><strong>rm prueba?.txt</strong></p><p><em>rm</em> sólo puede borrar archivos. En caso de querer borrar un directorio, debes utilizar el modificador <strong>-r</strong>. Por ejemplo:</p><p><strong>rm -r cuentos/</strong></p><h2 id="conclusión">Conclusión</h2><p>¡Felicitaciones! Ya conoces los rudimentos básicos de un sistema similar a UNIX.</p><p>Si lo deseas, puedes borrar ahora el directorio <em>temporal/</em>:</p><p><strong>rm -r ~/temporal</strong></p><p>¡Vuelve a tu directorio <em>/home</em> con el comando <strong>cd ~</strong> y continúa disfrutando de texto-plano.xyz, el entorno minimalista!</p><span class="meta"><time datetime="2021-03-24T21:52:00-03:00">24 03 2021</time> &middot; <a href="/tag/shell">shell</a>, <a href="/tag/interprete">interprete</a>, <a href="/tag/terminal">terminal</a>, <a href="/tag/consola">consola</a>, <a href="/tag/comandos">comandos</a></span></section></main></body></html>
Un proyecto texto-plano.xyz