Wednesday 12 August 2015

Consejos y trucos, artículos básicos sobre configuraciones que ayudan a un mejor desempeño de nuestros SO's. Cada proceso ha sido personalmente comprobado.





En este blog continuamos con la parte de comandos referentes a los archivos, así que sigamos aprendiendo acerca de los maravillosos y geniales comandos Linux.

El cajón de los comandos Linux es una guía de referencia rápida para todos los usuarios Linux que desean aprender los comandos de este gran SO. Los comandos se dividen en 15 categorías, lo cual nos permite tener un mayor entendimiento acerca de que comando utilizar en una específica situación. El agradecimiento total al creador de esta guía +Bobbin Zachariah.

Esta guía puede ser utilizada ya sea para usuarios nuevos o avanzados, proveyendo el mejor esfuerzo para dar a conocer los comandos Linux más relevantes. 

Así que empecemos con la 1ª parte de los comandos referentes a los archivos.


$ ls

Uno de los comandos básicos en Linux es ls, sin este comando probablemente tendriamos dificultades para explorar el contenido de los directorios. Este comando debe ser conocido por todas las personas que entran en el maravilloso mundo Linux. 

¿Qué es ls?
El comando ls es utilizado para listar archivos y directorios, por defecto, este nos dará el contenido del directorio actual, pero con algunos parámetros podemos hacer aun más. Veremos algunos ejemplos del uso de ls en las operaciones del día a día.


Ejecutar ls sin parámetro.

Correr ls sin parámetro nos imprime una lista de archivos y/o directorios únicamente; ninguna otra información nos mostrará en los resultados.



Usando formato de lista larga.

Al utilizar el parámetro -l nos mostrará una lista amplia de contenido en el directorio actual. Para los siguientes ejemplos combinaremos -l para obtener mejores resultados.


Veamos como leer el resultado:

- Primera columna.
La primera letra d nos dice si el contenido es un archivo o directorio, en la imagen arriba, vemos Desktop, Documents, Downloads, Music son directorios. Si tiene el signo menos (-) significa que el contenido es un archivo; mientras que si vemos una l (minuscula) significa que el contenido es un archivo de enlace.
Los siguientes 9 caracteres son acerca de los permisos del archivo, los primeros 3 rwx son para el dueño del archivo, los segundos 3 dígitos son para el grupo al que pertenece el archivo y los últimos 3 son para acceso general del archivo.

- Segunda columna.
Esta columna nos dice la cantidad de enlaces a un archivo (hard/soft links)

- Tercera columna.
Nos dice acerca del  propietario del directorio y/o archivo.

- Cuarta columna.
Esta  nos muestra quién es el propietario del grupo del directorio y/o archivo.

- Quinta columna.
Esta nos imprime sobre el tamaño del directorio y/o archivo en unidades bytes. A excepción de los directorios, el tamaño siempre será de 4096 bytes.

- Sexta columna.  
Aquí nos dice acerca de la última fecha y hora en que el archivo se ha modificado.   

- Septima columna. 
Nos muestra el nombre del archivo o directorio.


Mostrar el tamaño del archivo.

La lectura del tamaño en unidades  bytes nos puede confundir. Es más fácil leer 6,5 M que 6.727.680 bytes; para ello, podemos utilizar -h combinado con el parámetro -l. El parámetro -h significa legible para humanos.



Otro parámetro que puede hacerlo es el parámetro --si. Este es similar al parámetro -h, pero --si maneja 1000, mientras que -h maneja 1024.


Ordenar por tamaño de archivo. 

También podemos mostrar el tamaño del archivo, es posible que deseemos ordenarlo  cada uno por tamaño. Podemos utilizar para esto el parámetro -S. La lista será ordenada por el tamaño del archivo, comenzando con el más grande.



Escalando tamaño.

ls puede escalar por tamaño si antes usamos --block-size = SIZE. Donde SIZE es:


  K = Kilobyte
  M = Megabyte
  G = Gigabyte
  T = Terabyte
  P = Petabyte
  E = Exabyte
  Z = Zettabyte
  Y = Yottabyte


Por ejemplo, si queremos escalar el tamaño usando unidades Megabyte. La sintaxis será así:



Mostrar archivos ocultos.  

En Linux, un archivo que comienza con "." (punto) es un archivo oculto. Para mostrarlo con el comando ls  podemos utilizar el parámetro -a.



Listar las entradas a directorio.

Si queremos listar únicamente las entradas a directorios, podemos utilizar la opción -d



Imprimir entradas sin información del propietario.  

Para esto, podemos utilizar el parámetro -g



Listar entradas sin información del grupo.

Mientras que -g suprime la información del propietario, -G remueve la información del grupo.



Imprimir UID y GID.  

Si queremos saber el UID del propietario y el GID del grupo, lo podemos hacer con el comando ls más el parámetro -n. He aquí una muestra:



En el ejemplo anterior, sabemos que el usuario "li-khrissteam"  tiene UID=1000 y GID=1000


Imprimir sin color.

En algunas  de las distribuciones UN*X las opciones de color para el comando ls están ya habilitadas, esto hará que ls imprima la lista en color; si no lo queremos, podemos usar el parámetro --color=never.


Imprimir el número de índice de cada archivo.
 
Para imprimir el número de índice o conocido como número de inodo, podemos utilizar el parámetro -i, este aparecerá en la primera columna.



Añadir / (diagonal) para marcar el directorio.

Para esto, utilizamos la opción -p.



Imprimir lista en orden inverso.
 
Puede ser que  querramos ver  una lista de las entradas en orden inverso, para ello,  usamos el parámetro -r.


Listar subdirectorios respectivamente.

Con el parámetro -R, podemos listar el directorio incluyendo sus subdirectorios.



Ordenar por extensión.

Podemos ordenar la lista por extensión utilizando la opción -X o --sort=extension.



Imprimir por fecha de modificación.

Utilizando el parámetro -t ordenará la lista por fecha de modificación, empezando con la más reciente.



Listar el directorio home.

Para ver nuestro directorio principal (home) podemos usar un atajo utilizando "~" (tilde) de esta manera no tenemos que escribir el nombre del directorio completo. Digamos que la ruta de nuestro directorio principal es /home/li-khrissteam, entonces el simbolo "~" tendrá el significado de dicha ruta.



Imprimir el directorio principal.  

Cada vez que estamos dentro de un directorio, también podemos listar el directorio principal sin necesidad de escribir el nombre completo del directorio. Veamos una muestra:


Para listar el contenido del directorio 1 nivel arriba usamos la opción ../

Y para ver el contenido del directorio 2 niveles arriba utilizamos el parámetro ../../


Mostrar la versión del comando ls.  

Para esto, usamos el parámetro --version



Conclusión

Estos son algunos parámetros que podemos utilizar en las operaciones del día a día. Por supuesto, siempre podemos consultar el manual de ls escribiendo man ls o ls --help en su consola para explorar con más detalles de este comando.


$ pwd


Cuando estamos  dentro de un directorio, es posible que deseemos saber donde exactamente nos encontramos; podemos saberlo, usando el comando pwd.

¿Qué es pwd?

 
Este es un comando para imprimir el nombre del / directorio de trabajo actual. Cuando estamos "perdidos" en un directorio, siempre podemos revelar dónde estamos.


Como usarlo.

El comando pwd está destinado a la impresión del nombre / del directorio de trabajo actual, este comando no tiene una gran cantidad de parámetros para añadir. Para usarlo, solo tenemos que escribir:



Y nos mostrará donde nos encontramos. Para un shell como bash, a veces esta información ya aparece después del "host-name". Echemos un vistazo a la imagen de abajo.



Como se puede ver arriba, el /lib/udev/rules.d ya incluye un "hostname"; Entones al escribir  pwd, imprimirá /lib/udev/rules.d de nuevo. Pero cuando utilizamos otro shell tales como csh, el comando pwd puede ayudar a decirte dónde estás. He aquí una muestra de ello.




Imprimir directorio físico y omitir enlaces simbólicos

Cuando estamos en un directorio el cual contiene enlaces simbólicos a otro directorio, encontraremos que pwd imprimirá los alias / de los enlaces simbólicos. Para imprimir el nombre real del directorio, podemos utilizar el parámetro -P.
 




En las imagenes de arriba, nos cambiamos al directorio de PlayOnLinux's virtual drives; este se localiza en /home/likhrissteam y su enlace simbólico al directorio wineprefix. Al ejecutar pwd la terminal nos devuelve /home/likhrissteam/PlayOnLinux's virtual drives; pero si agregamos el parámetro -P, entonces sabremos que el directorio real es /home/likhrissteam/.PlayOnLinux/wineprefix.
 
Mostrar pwd

En la consola o bash, pwd puede venir ya incorporado, para saberlo, podemos utilizar este comando:



Vemos que hay dos pwd, cuando usamos pwd, podemos utilizar el ya incorporado en nuestra terminal. Este pwd anulará al pwd original. He aquí una muestra.


En la imagen de arriba, ahora estamos en el interior de /home/likhrissteam/.PlayOnLinux/wineprefix. Cuando usamos /bin/pwd, nos devolverá el nombre real del directorio actual; pero cuando añadimos el parámetro -L, nos mostrará un nombre de enlace simbólico del directorio actual. Esta salida del parámetro -L es el mismo resultado como si  escribieramos pwd, el cual usa el pwd integrado en la consola.

Imprimir la versión de pwd

Para imprimir la versión de este comando, podemos utilizar el parámetro --version. Pero para la terminal o bash, tenemos que usar /bin/pwd en lugar de pwd; de lo contrario, nos devolverá un mensaje de error como el siguiente:



Conclusión

Pwd puede ayudarnos a saber donde estamos en el directorio actual cuando no lo imprime directamente en símbolo del sistema. Como de costumbre, siempre podemos escribir man pwd en la consola para explorar más detalle de este comando.
 
Saludos especiales a tod@s espero este aporte pueda ser de su ayuda. Si les fue útil compartan y comenten.