ls es un utilitario que permite listar información de ficheros de cualquier tipo incluyendo directorios, por defecto (cuando no se le pasa alguna opción) ls muestra el contenido del DIR actual (o especificado) de forma no recursiva, ordenado alfabeticamente e ignorando los ficheros/directorios ocultos.
Sinopsis
ls [Opciones] [Fichero]
Opciones:
-a: No ignora los ficheros ocultos
-B: Ignora ficheros que terminan con ~
-d: Lista solo los directorios
–full-time: Muestra la fecha en formato largo.
-g: Omite el propietario de cada fichero
-G: Omite el grupo de cada fichero.
-h: Lista el tamaño de cada fichero en formato entendible, añade K, M o G según sea el caso
-i: Número inode
-l: Además del nombre del fichero imprime el tipo de fichero, permisos
, cantidad de enlaces duros (hard links), propietario, grupo, tamaño y
fecha
-R: Lista los ficheros de forma recursiva
-t: Lista los ficheros ordenados por fecha
-Z: Imprime el contexto SELinux
Nota:
– No se especifican todas las opciones.
– La mayoría de las opciones tienen su equivalente en la forma larga (–opcion)
Ejemplos
Para desarrollar los siguientes ejemplos se ha tomado como base la estructura de directorio de una distribución standard de Symfony2
- Listar contenido del dir actual
$ ls app bin deps deps.lock LICENSE README.md src web
2. Listar propiedades del DIR web
$ls -ld web/ drwx------+ 3 yoander yoander 4096 Jun 23 20:09 web/
3. No ignorar fichero ocultos
$ ls -a1 web/ . .. app_dev.php apple-touch-icon.png app.php bundles config.php favicon.ico .htaccess robots.txt
Nótese el uso de la opcion -1 para visualizar el resultado en una sola columna
4. Listar contenido del dir actual: formato largo
$ ls -l total 36 drwx------+ 6 yoander yoander 4096 Jun 23 20:09 app drwx------+ 2 yoander yoander 4096 Jun 23 20:09 bin -rwx------+ 1 yoander yoander 1577 Jun 5 17:10 deps -rwx------+ 1 yoander yoander 487 Jun 5 17:10 deps.lock -rwx------+ 1 yoander yoander 1065 Apr 26 13:24 LICENSE -rwx------+ 1 yoander yoander 6405 Apr 26 13:25 README.md drwx------+ 3 yoander yoander 4096 Jun 23 20:09 src drwx------+ 3 yoander yoander 4096 Jun 23 20:09 web
5. Omitir propietario y grupo
$ ls -lgG total 36 drwx------+ 6 4096 Jun 23 20:09 app drwx------+ 2 4096 Jun 23 20:09 bin -rwx------+ 1 1577 Jun 5 17:10 deps -rwx------+ 1 487 Jun 5 17:10 deps.lock -rwx------+ 1 1065 Apr 26 13:24 LICENSE -rwx------+ 1 6405 Apr 26 13:25 README.md drwx------+ 3 4096 Jun 23 20:09 src drwx------+ 3 4096 Jun 23 20:09 web
6. Mostrar tamaño de cada fichero en formato entendible
$ ls -lgGh total 36K drwx------+ 6 4.0K Jun 23 20:09 app drwx------+ 2 4.0K Jun 23 20:09 bin -rwx------+ 1 1.6K Jun 5 17:10 deps -rwx------+ 1 487 Jun 5 17:10 deps.lock -rwx------+ 1 1.1K Apr 26 13:24 LICENSE -rwx------+ 1 6.3K Apr 26 13:25 README.md drwx------+ 3 4.0K Jun 23 20:09 src drwx------+ 3 4.0K Jun 23 20:09 web
7. Mostrar fecha en formato largo
Util si se desea conocer el momento exacto en que se modificó un fichero
$ ls --full-time total 36 drwx------+ 6 yoander yoander 4096 2012-06-23 20:09:58.525512425 -0400 app drwx------+ 2 yoander yoander 4096 2012-06-23 20:09:58.525512425 -0400 bin -rwx------+ 1 yoander yoander 1577 2012-06-05 17:10:00.000000000 -0400 deps -rwx------+ 1 yoander yoander 487 2012-06-05 17:10:00.000000000 -0400 deps.lock -rwx------+ 1 yoander yoander 1065 2012-04-26 13:24:24.000000000 -0400 LICENSE -rwx------+ 1 yoander yoander 6405 2012-04-26 13:25:59.000000000 -0400 README.md drwx------+ 3 yoander yoander 4096 2012-06-23 20:09:58.529512587 -0400 src drwx------+ 3 yoander yoander 4096 2012-06-23 20:09:58.605511982 -0400 web
Lectura recomendada
– man ls
– info ls