Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

10 mandatos útiles para GNU/Linux.

La cantidad de mandatos y funcionalidades que tenemos disponible en la consola de GNU/Linux es tal que es probable que pocos lleguen a dominar todo. En este artículo, originalmente publicado por BASH Cures Cancer y traducido y adaptado por MundoGeek.net, se muestran 10 mandatos poco conocidos y que te pudieran ser de utilidad algún día.
  1. pgrep: busca procesos en ejecución basándose sobre el nombre u otros atributos. Para obtener el PID (identidad de proceso) de todos los procesos del usuario root, por ejemplo:

    pgrep -u root

    Comparado con la forma habitual de hacerlo:

    ps -ef | egrep '^root ' | awk '{print $2}'

  2. pstree: muestra la lista de los procesos en ejecución en forma de árbol.
  3. bc: un pequeño intérprete para el cálculo matemático. Podemos iniciar el intérprete e introducir las operaciones, escribirlas en un archivo de texto o incluso usar una tubería y pasarlas directamente desde la línea de mandatos:

    echo -e "sqrt(16)\nquit\n" | bc -q -i

  4. split: sencillo comando que, como su nombre indica, nos permite dividir un archivo en varias partes. En la siguiente orden, por ejemplo, se divide el archivo "archivogrande" en partes de 2MB, usando como nombre para los archivos archivogrande_aa, archivogrande_ab, etc:

    split -b 2m archivogrande LF_archivogrande

  5. nl: son las siglas de number of lines (número de líneas). Se utiliza, como es de esperar, para contar el número de líneas de un archivo. Útil, por ejemplo, si quieres saber cuánto te ha cundido el pasar todo el fin de semana programando.
  6. mkfifo: crea una tubería con un nombre asociado. Veamos un pequeño ejemplo. Primero creamos una tubería mi-tuberia y almacenamos el resultado de un ls en la tubería:

    mkfifo tuberia
    ls > tuberia

    Esto hará que se cree un archivo con el contenido almacenado en la tubería y que la consola permanezca bloqueada hasta que se se lea la salida de la tubería desde otra parte. Abrimos otra consola y escribimos:

    head tuberia

  7. ldd: muestra las librerías compartidas de las que depende un programa. Para el comando java del JRE/JDK, por ejemplo:

    ldd /usr/bin/java
    linux-gate.so.1 => (0xb7f8b000)
    libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7f44000)
    libjli.so => /usr/lib/jvm/java-6-sun-1.6.0.10/jre/bin/../lib/i386/jli/libjli.so (0xb7f3b000)
    libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7f36000)
    libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7dd8000)
    /lib/ld-linux.so.2 (0xb7f71000)

  8. col: ¿quieres guardar la salida de una página de manual como texto plano?

    PAGER=cat
    man less | col -b > less.txt

  9. xmlwf: ¿necesitas comprobar si un archivo XML está bien formado?

    curl -s 'http://bashcurescancer.com' > bcc.html
    xmlwf bcc.html

  10. lsof: muestra una lista de los archivos abiertos. Recordad que en Linux también se utilizan archivos para representar cosas como directorios o zócalos (sockets), por lo que es posible listar todas las conexiones TCP con algo como:

    lsof | grep TCP

Fuente: MundoGeek.net.


Atención: Salvo que se indique lo contrario, la licencia del texto de este documento es Creative Commons Reconocimiento 2.5, mediante la cual usted tiene permitido copiar, modificar, comunicar y distribuir el contenido de este texto, de manera total o parcial, y publicarlo o difundirlo en cualquier otro sitio de Internet o medio de comunicaciòn, siempre y cuando incluya o cite (1)el nombre de este sitio de Internet, (2)enlace permanente de este documento, (3)nombre del autor y (4)la misma licencia de distribución.

Opciones: Imprimir | Recomendar | Enlace permanente

Twitter Facebook Google Bookmarks Bitacoras.com Wikio Menéame Technorati Bloglines Digg Yahoo Buzz

Seguimientos (Trackback)

URL de seguimiento para esta entrada:
http://www.alcancelibre.org/trackback.php/10-mandatos-utiles-linux
Agregar comentario

Los siguientes comentarios son de la persona que los haya enviado. Este sitio se deslinda de cualquier responsabilidad respecto de las opiniones expresadas por los participantes en nuestros foros y secciones de comentarios, y el hecho de publicar las mismas no significa que se esté de acuerdo con éstas.