Comandos de GNU/Linux útiles para listar ficheros (ls)

2 septiembre 2009, Miércoles at 17:44 2 comentarios

Bueno, os dejo unos comandos muy útiles que uso para listar mis fotografías, que cada vez son más, y encontrar la que busco.
La búsqueda es más bonita en Nautilus, pero para crear listados de fotografías, estos comandos son rapidisimos y muy útiles.

Lo primero que tenemos que hacer es abrir una terminal.

En ubuntu es así:

Aplicaciones -> Accesorios > Terminal

Nos situará en nuestra home

usuario@usuario:/home/usuario$

Una vez aquí, navegamos hasta el directorio donde tenemos las fotos. En este caso yo las tengo en /home/usuario/Fotos, asi que escribo

usuario@usuario:/home/usuario$ cd Fotos

y ya estoy en el directorio Fotos.

usuario@usuario:/home/usuario/Fotos$

Ahora tengo varias opciones:

Opción 1: Quiero listar todos los ficheros del directorio:

usuario@usuario:/home/usuario/Fotos$ ls -lhgo

Con este comando estamos pidiendo un listado largo (-l) con el tamaño de los ficheros en formato entendible (h) sin mostrar el grupo (g) al que pertenece el fichero ni el propietario (o) por que no me interesan esos datos.

Nos devuelve esto:
total 75K
-rwxrwxrwx 1  35K 2009-08-14 13:34 Ichneumonidae 1.jpg
-rwxrwxrwx 1  36K 2009-08-14 13:35 Ichneumonidae.jpg
drwxrwxrwx 1 4,0K 2009-08-14 13:22 tal0

Total 75K (=75KBytes) que es lo que ocupa todo lo que hay en el directorio (sin contar los subdirectorios). Tenemos la primera columna que nos dice los permisos (rwx quiere decir lectura,escritura y ejecución – read, write, execution -) y el tipo de fichero. “-” es un fichero normal y la “d” es un directorio. La segunda columna indica el número de enlaces duros (1), lo siguiente es el peso de la imagen (35K=35KBytes), lo siguiente es la fecha de la última modificación, con la hora, y por último el nombre del fichero o directorio.

Opción 1.1: Quiero listar todos los ficheros del directorio y de los subdirectorios:

usuario@usuario:/home/usuario/Fotos$ ls -lhgoR

Nos devuelve

.:
total 536K
-rwxrwxrwx 1  35K 2009-08-14 13:34 Ichneumonidae 1.jpg
-rwxrwxrwx 1  36K 2009-08-14 13:35 Ichneumonidae.jpg
drwxrwxrwx 1 4,0K 2009-08-14 13:22 tal0

./tal0:
total 7M
-rwxrwxrwx 1 3,7M 2009-08-10 09:43 IMG_0506.JPG
-rwxrwxrwx 1 3,3M 2009-08-10 09:43 IMG_0507.JPG

Nos devuelve el contenido del directorio y de sus subdirectorios.

Opción 2: Quiero listar los ficheros jpg (gif, png, bmp…) del directorio:

usuario@usuario:/home/usuario/Fotos$ ls -lhgo | grep jpg

Nos devolvería:

-rwxrwxrwx 1  35K 2009-08-14 13:34 Ichneumonidae 1.jpg
-rwxrwxrwx 1  36K 2009-08-14 13:35 Ichneumonidae.jpg

Nota: si queremos que la búsqueda sea indiferente a mayúsculas y minúsculas, es decir, que busque jpg y JPG, ponemos esto:

usuario@usuario:/home/usuario/Fotos$ ls -lhgo | grep -i jpg

Para obtener en los resultados solo los nombres de los ficheros, basta con hacer un ls | grep jpg, quitando toda la parte de (-lhgo).

Opción 2.1: Quiero listar los ficheros jpg del directorio y sus subdirectorios:

usuario@usuario:/home/usuario/Fotos$ ls -lhgoR | grep jpg

Nos devolvería:

-rwxrwxrwx 1  35K 2009-08-14 13:34 Ichneumonidae 1.jpg
-rwxrwxrwx 1  36K 2009-08-14 13:35 Ichneumonidae.jpg
-rwxrwxrwx 1 3,7M 2009-08-10 09:43 IMG_0506.JPG
-rwxrwxrwx 1 3,3M 2009-08-10 09:43 IMG_0507.JPG

Nota: si queremos que la búsqueda sea indiferente a mayúsculas y minúsculas, es decir, que busque jpg y JPG, ponemos esto:

usuario@usuario:/home/usuario/Fotos$ ls -lhgoR | grep -i jpg

Opción 3: Si queremos guardar los resultados en un fichero, podemos copiar y pegar desde la terminal o escribir al final del comado > fichero.txt para que guarde los resultados en un fichero.

Ejemplo:

usuario@usuario:/home/usuario/Fotos$ ls -lhgoR | grep -i jpg > prueba.txt

Me guardará los resultados del comando en /home/usuario/Fotos/prueba.txt

usuario@usuario:/home/usuario/Fotos$ ls -lhgoR | grep -i jpg > /home/usuario/Escritorio/prueba.txt

Me guardará los resultados del comando en /home/usuario/Escritorio/prueba.txt

Nota:

El ejemplo está hecho con jpg, pero podemos usar lo que queramos buscar (perro, gato, .jp, .gif, loquesea.png…cualquier cosas que queramos y este contenida en el nombre del fichero).

Para retroceder de directorio basta con escribir “cd ..” y accederemos al directorio inmediatamente superior.

Para no tener que escribir las rutas completas, si escribimos la primera letra del directorio y damos al tabulador, automáticamente se escribirá la palabra entera (si sólo hay un directorio con ese nombre) o si pulsamos 2 veces nos saldrán las opciones disponibles, entonces escribimos la siguiente letra y pulsamos tabulador.

Bueno, esto se puede modificar a gusto de cada uno, mirando el manual de grep (man grep o grep –help) y utilizando find en vez de grep.

Algunos ejemplos:

* Crear un listado de todos los ficheros – canciones, música – mp3 de una carpeta:

usuario@usuario:/home/usuario/música$ ls -lhgo | grep mp3 > lista-musica-mp3.txt

* Crear un listado de todos los ficheros – videos, películas – avi de una carpeta:

usuario@usuario:/home/usuario/películas$ ls -lhgo | grep avi > lista-peliculas-avi.txt

Podemos cambiar avi por mpeg, mpg, mp4, rmvb, flv…etc.

* Crear un listado de todos los ficheros – fotografías – jpg de una carpeta:

usuario@usuario:/home/usuario/fotos$ ls -lhgo | grep jpg > lista-fotos-jpg.txt

Podemos cambiar jpg por gif, bmp, png…etc.

Unos comandos muy sencillos que nos facilitarán la vida.

Entry filed under: Animales, Animales y plantas, Blogroll, Ciencia, crueldad, Fotografía, Home, Informática, Japón, Lectura-Escritura NTFS desde Linux, Linux, Lugares, Medio Ambiente, orquídeas, Ruby on Rails, Senderismo y bici, Veg(etari)anismo, veganismo, Zen. Tags: , , , , , , , , , , .

Mini softbox casero para flash pop-up ¿Por qué se tira tanta comida cada dia?

2 comentarios Add your own

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Trackback this post  |  Subscribe to the comments via RSS Feed



A %d blogueros les gusta esto: