Mostrando resultados del 1 al 3 de 3
  1. #1
    Ingreso
    Jul 2008
    Ubicación
    Camino del Manzanares.
    Posts
    3.104

    Conoce un poco mas la terminal

    Pequeño tutorial especialmente dedicado para los que acabáis de comenzar, pero dónde incluso los que ya sabéis del tema, podéis aprender. Trataremos atajos de teclados que nos harán más productivos, control de directorios, ejecuciones en segundo plano, el fantástico autocompletado, control y manejo del historial, cómo mostrar los archivos, comandos dentro de otros comandos, el comodín, redireccionando resultados a archivos y, las condicionales. Seguro que aprenderás algo.



    Atajos de teclado para ser más productivos

    Estos pocos pero bastante útiles comandos harán de tu experiencia en Linux mucho más agradable.

    Código:
    Ctrl + A: Mueve el cursor al principio de la línea
    Ctrl + E: Mueve el cursor al final de la línea
    Ctrl + U: Borra desde el cursor hasta el inicio de la línea
    Ctrl + K: Borra desde el cursor hasta el final de la línea
    Ctrl + W: Borra desde el cursor hasta el principio de la palabra
    Ctrl + Y: Pega texto del portapapeles
    Ctrl + Shift + V: Pega texto del portapapeles
    Ctrl + L: Despeja la pantalla dejando la línea actual en la parte superior de la pantalla
    Ctrl + X: Deshace los últimos cambios
    Alt + R: Deshace todos los cambios de la línea
    Ctrl + R: Incremental de búsqueda inversa del historial
    Alt + P: Elimina la línea escrita no ejecutada

    Atajos en change directory y otros


    Change directory es el comando que nos permite cambiar de directorio:

    $ cd carpeta

    Y como podréis observar, utilizo mucho símbolos como ~, un punto o dos puntos. Veamos qué es cada uno; el símbolo ~ representa la carpeta de usuario del ejecutor, es decir, un:

    $ cd ~

    Cambiaría el directorio por tu carpeta de usuario. El punto representa la carpeta actual y, los dos puntos, la carpeta superior, es decir, si estamos en ~ y ejecutamos:

    $ cd ..

    El directorio será el home. Y si ejecutamos el comando estúpido:

    $ cd .

    Estaremos en el mismo directorio que antes de ejecutarlo.


    Ejecutar en segundo plano


    Abran la consola y ejecuten:

    $ firefox

    Como pueden comprobar, se ejecuta Mozilla Firefox, es algo bastante intuitivo, ahora cierren la terminal. ¡Pero Firefox no! Es una broma, Firefox se estaba ejecutando desde la consola y, si cierras esta, Firefox también se cierra. Esto podemos evitarlo con una simple cosa:

    $ firefox &

    Listo, de esta forma, podéis ejecutar comandos y aplicaciones en segundo plano, para poder seguir utilizando la consola o simplemente cerrarla.


    Autocompletado

    La terminal tiene algo realmente productivo que la gran mayoría de gente utiliza, es el llamado autocompletado. Me explico, supongamos que tenemos un archivo llamado “hola.sh” en el Escritorio. El comando para ejecutarlo es el siguiente:

    $ cd ~/Escritorio && ./hola.sh

    Pero con el autocompletado, con escribir esto será suficiente:

    $ cd ~/Es[Tab] && ./h[Tab]

    Donde pone [Tab] pulsen la tecla Tabulador. Estamos ahorrando 12 tipeos en un comando tan sencillo como este, imaginadlo con un comando mucho más complejo, es realmente productivo.


    Utilizando el historial para ser más productivos

    Dejamos de lado los atajos para pasar a los comandos, comandos que te permiten ser más productivos al utilizar el historial. Pondremos los comandos y al lado, los comentamos:

    $ !! #Ejecuta el último comando del historial
    $ !xyz #Ejecuta el último comando en el historial que empieza por xyz
    $ !4 #Ejecuta el cuarto último comando ejecutado
    $ ^abc^xyz #Reemplaza la primera ocurrencia que empiece por abc con xyz y luego la ejecuta

    Antes de proseguir, veamos un ejemplo de cada. En el caso del primero, el cual ejecuta el último comando del historial, si ejecutáis:

    $ sudo apt-get update

    Y cuando finalice, ejecutáis:

    $ !!

    Volverán ha actualizarse los repositorios (sudo apt-get update). Si ejecutamos:

    $ ls

    Después:

    $ cd ~/Documentos

    Y después:

    $ sudo apt-get update && cd ~

    Y ahora usamos el segundo:

    $ !cd

    Buscará el último comando ejecutado que comience por “cd” y lo ejecutará, en este caso cambiará el directorio a ~/Documentos.

    En el mismo caso podemos utilizar el tercer comando, si ejecutamos:

    $ !4

    Se ejecutará el cuarto último comando, teniendo en cuenta el doble cambio de directorio sería “ls”. Por último, un comando bastante potente. Imaginen que ejecutan:

    $ sudo apt-get update

    Y quieren cambiarlo por un echo, para que la consola te devuelva “apt-get update”, es decir:

    $ echo apt-get update

    Tan solo tendrán que ejecutar:

    $ ^sudo^echo

    Y listo. Para complementar todos estos comandos tenemos el comando:

    $ history

    El cual muestra un historial de los últimos comandos utilizados. Por cierto, puedes navegar con las flechas del teclado (arriba y abajo) por el historial.


    Listando archivos

    El comando “ls” permite listar los archivos de un directorio, por ejemplo, encontrándonos en la carpeta de usuario:

    $ ls

    Mostrará todas las carpetas y archivos dentro del directorio, pero no los archivos y carpetas ocultos. Y tan solo dará el nombre de cada cosa, nada más. Si queremos mostrar también los archivos y carpetas ocultos:

    $ ls -a

    Si en cambio, queremos saber dónde estamos:

    $ ls -d

    Este comando siempre nos devolverá un punto, algo que como vimos anteriormente, significa la carpeta donde estas, sin lugar a dudas, curioso.

    Uno de los más utilizados es:

    $ ls -l

    Que lista los archivos con mucho más detalle, especificando para cada archivo sus permisos, el número de enlaces rígidos, el nombre del propietario, el grupo al que pertenece, el tamaño en bytes y la fecha de la última modificación. También tenemos esta curiosa opción:

    $ ls -r

    Que invierte el orden de listado de los archivos. Si lo que queremos es información del tamaño, podemos utilizar el de antes (ls -l) o este:

    $ ls -s

    Que muestra el tamaño de cada archivo en bloques de 1024 bytes a la izquierda del nombre. Aunque si lo que queremos es que se ordenen cronológicamente utilizaremos:

    $ ls -t

    El próximo recomiendo utilizarlo solo en directorios con pocos subdirectorios, pues muestra todo el árbol desde donde te encuentras hasta el final:

    $ ls -R

    Una vez ya tenéis claro el comando ls, veamos como utilizarlo claramente; mostraremos todos los archivos (ocultos y no ocultos) de la carpeta ~/Imágenes y los ordenaremos cronológicamente:

    $ ls -at ~/Imágenes

    O.. mostratemos el árbol completo de la carpeta de usuario, pero en orden invertido, con el tamaño de cada archivo en bloques de 1024 bytes y ordenado cronológicamente:

    $ ls -Rrst ~

    Ahora solo tenéis que utilizarlo según vuestras preferencias.


    Pipes: utilizando comandos dentro de otros comandos

    Al escuchar esto puedes pensar que es algo complejo, pero es realmente sencillo, pongamos el siguiente ejemplo: queremos saber si tenemos el archivo “matriculas.pdf” en el directorio “Documentos” mediante la consola, el método que utilizaría la gente que no sabe utilizar Pipes sería el siguiente: vamos al directorio Documentos:

    $ cd ~/Documentos

    Listamos el contenido:

    $ ls

    Y buscamos el contenido a ojo de buen cubero. Pero utilizando Pipes sería algo tan sencillo como esto: vamos al directorio:

    $ cd ~/Documentos

    Y ejecutamos:

    $ ls | grep matriculas.pdf

    De esta forma te devolverá el resultado:

    matriculas.pdf

    Si realmente se encuentra y, no devolverá nada si no lo encuentra. Lo que hemos hecho aquí es ejecutar el comando “ls”, que lista todos los archivos y, enviar esta información al comando grep, que busca el contenido que le digas donde tu le digas. Bastante práctico.


    Will cards: comodín ante la duda

    Los Will cards nos permiten sirven como una variable que puede tomar cualquier valor y nos permiten generalizar los comandos. Veamos un ejemplo y, utilizaremos Pipes también. Tomemos el ejemplo anterior, el de matriculas.pdf, pero esta vez, recordamos haberlo guardado en varias extensiones, por compatibilidad y, queremos recordar cuales eran. Así como varias fechas, con el formato matriculas-01-01-2012.pdf. De forma habitual haríamos lo de antes, mostrar el directorio y buscar. Incluso podríamos resolver este problema con Pipes:

    $ ls | grep matriculas

    Veamos todos los documentos de matrículas en pdf del año 2012:

    $ ls | grep matriculas-*-2012.pdf

    De esta forma, lo que hay entre matriculas- y -2012 es una variable que puede ser cualquier cosa, pudiéndose rellenar por cualquier día y mes de año 2012. Ahora cojamos todos los pdf:

    $ ls | grep matriculas-*.pdf

    Todos los archivos con fecha de primer día de cualquier mes, cualquier año y cualquier formato:

    $ ls | grep matriculas-01-*

    ¿Fácil, no?


    Redireccionando resultados a archivos

    Hemos visto, mediante Pipes, como llevar resultados de comandos a otros comandos, para que utilicen esta información, pero imaginemos que un amigo te pide que le envíes en un archivo de texto por correo electrónico los nombres de las imágenes de la carpeta imágenes. Petición remota la del amigo, pero bueno, es para tener ejemplos. Pues sería algo así:

    Vamos al directorio:

    $ cd ~/Imágenes

    Y ejecutamos:

    $ ls > nombres.txt

    Ya tienen el archivo en el directorio ~/Imágenes listo para enviar a su amigo.


    Condicional

    A veces, cuando queremos actualizar la lista de paquetes y, después de esto, instalar un programa, la actualización tarda mucho y tenemos que irnos, pues yo tengo la solución para ti:

    $ sudo apt-get upgrade && sudo apt-get install firefox

    Este comando actualizará los paquetes que tengan actualización y, cuando finalice, instalará Firefox. Es sencillo, pon entre dos comandos (en la misma línea) &&. Yo incluso he gastado bromas: sabía que un amigo iba a entrar en mi habitación en unos 20 segundos (por lo que tardaba de llegar de la cocina), por lo que sumándole otros 20 mientras se asienta:

    $ sleep 40 && clear && figlet "Vas a morir" #hay que tener instalado figlet

    El comando sleep espera los segundos que le marques, y cuando finalice la espera de 40 segundos, limpia la pantalla y muestra “Vas a morir” con letras grandes creadas por el programa figlet.


    Conclusión

    Como podéis comprobar los recién llegados, la terminal es una herramienta importantísima y extremadamente potente y, si sabes manejarla bien, no tendrás nunca ningún problema.

    AUPA ATLETI !!!!


  2.    Facebook Comments



  3. #2
    Avatar de avanti
    avanti no está en línea Usuario Registrado Power Wariano
    Ingreso
    Jul 2006
    Posts
    1.337
    Gracias por el aporte amigo Diegogabriel!! muy bueno, a la biblioteca!!
    Jorge pa' los cuates



  4. #3
    Ingreso
    Feb 2008
    Posts
    2.489
    Gracias amigo diego, muy buena la guiá de comandos, puesto que nunca están demás.

    Saludos




Temas Similares

  1. Matrix Shell en tu terminal
    By jamahoma in forum Linux
    Respuestas: 5
    Ultimo Mensaje: 10-10-2010, 10:58
  2. Respuestas: 11
    Ultimo Mensaje: 11-10-2009, 16:51
  3. Problema en terminal Ubuntu
    By 89diego89 in forum Linux
    Respuestas: 5
    Ultimo Mensaje: 26-04-2009, 16:55
  4. Respuestas: 0
    Ultimo Mensaje: 12-11-2008, 07:57
  5. terminal de direccion
    By chelon in forum General
    Respuestas: 0
    Ultimo Mensaje: 05-09-2008, 18:12

Tags

Normas de Publicacion

  • No Puedes crear nuevos temas
  • No Puedes responder
  • No Puedes adjuntar archivos
  • No Puedes editar tus posts
  •  
  • El código BB estáhabilitado
  • Código "Smiles" está habilitado
  • Código [IMG] está habilitado
  • Código [VIDEO] estáhabilitado
  • Código HTML está habilitado
[Output: 58.47 Kb. compressed to 51.62 Kb. by saving 6.85 Kb. (11.72%)]