Muestra el contenido de un directorio.
ls [ -1 ] [ -A ] [ -C ] [ -F ] [-H | -L] [ -N ] [ -R ] [ -X] [ -a ] [ -b ] [ -c ] [ -d ] [ -e ] [ -f ] [ -g ] [ -i ] [ -l ] [ -m ] [ -n ] [ -o ] [ -p ] [ -q ] [ -r ] [ -s ] [ -t ] [ -u ] [ -U ] [ -x ] [ Archivo ... ]
ls -f [ -C ] [ -d ] [ -i ] [ -m ] [ -s ] [ -X] [ -x] [ -1 ] [ -U ] [ Directorio ... ]
El mandato ls escribe en la salida estándar el contenido de cada parámetro Directorio especificado o el nombre de cada parámetro Archivo especificado, junto con otra información que solicite con los distintivos. Si no especifica un parámetro Archivo o Directorio, el mandato ls muestra el contenido del directorio actual.
Especificar más de una de las opciones de los pares mutuamente exclusivos no se considera un error. La última opción especificada en cada par determina el formato de salida.
Por omisión, el mandato ls muestra toda la información en orden alfabético por nombre de archivo. El orden de clasificación queda determinado por la variable de entorno LANG o LC_COLLATE.
Cuando el mandato ls muestra el contenido de un directorio, no muestra entradas para aquellos archivos cuyos nombre empiezan con un . (punto) a no ser que se utilice el distintivo -a o -A. Si es root quien ejecuta el mandato, se utiliza el distintivo -A por omisión.
Existen tres maneras de formatear la salida:
Para determinar el número de posiciones de carácter en la línea de salida, el mandato ls utiliza la variable de entorno COLUMNS. Si esta variable no está establecida, el mandato obtiene el valor de la columna actual de la pantalla. Si el mandato ls no puede determinar el número de posiciones de caracteres de ninguno de los métodos anteriores, utilizará un valor por omisión de 80.
La modalidad visualizada con el distintivo -U es la misma que con el distintivo -l, excepto por la adición de un decimoprimer carácter interpretado como se especifica a continuación:
| E | Indica que un archivo tiene información de atributos ampliados (EA). Los EA de un archivo se muestran utilizando el mandato getea. |
| - | Indica que un archivo no tiene información de atributos ampliados. |
La modalidad visualizada con los distintivos -e y -l se interpreta de la siguiente manera:
Si el primer carácter es:
| d | La entrada es un directorio. |
| b | La entrada es un archivo de bloques especiales. |
| c | La entrada es un archivo de caracteres especiales. |
| l | La entrada es un enlace simbólico, y o bien se ha especificado el distintivo -N o el enlace simbólico no apunta a ningún archivo existente. |
| p | La entrada es un archivo especial FIFO (primero en llegar, primero en salir). |
| s | La entrada es un socket local. |
| - | La entrada es un archivo normal. |
Los siguientes nueve caracteres se dividen en tres conjuntos de tres caracteres cada uno. El primer conjunto de tres caracteres muestra los permisos del propietario. El siguiente conjunto de tres caracteres muestra los permisos de los otros usuarios en el grupo. El último conjunto de tres caracteres muestra los permisos de cualquiera que tenga acceso al archivo. Los tres caracteres en cada conjunto indican, respectivamente, los permisos de lectura, escritura y ejecución sobre el archivo. El permiso de ejecución en un directorio permite buscar un archivo determinado en un directorio.
Los permisos se indican como sigue:
| r | Lectura |
| w | Escritura (editar) |
| x | Ejecutar (búsqueda) |
| - | Permiso correspondiente no otorgado |
El carácter de permiso de ejecución por grupo es s si el archivo tiene modalidad set-group-ID. El carácter de permiso de ejecución por usuario es s si el archivo tiene modalidad set-user-ID. El último carácter de la modalidad (generalmente x o -) es T si está establecido el bit 01000 (octal) de la modalidad (consulte la documentación del mandato chmod para obtener información acerca de esta modalidad). Las indicaciones de set-ID y del bit 01000 de la modalidad aparecen como (S y T, respectivamente) en mayúsculas si el permiso de ejecución correspondiente no está establecido. La modalidad t indica que el bit sticky está en el archivo o en el directorio.
La modalidad visualizada con el distintivo -e es la misma que la visualizada con el distintivo -l, excepto por la adición del decimoprimer carácter que se interpreta como se indica a continuación:
Cuando se lista el tamaño de los archivos en un directorio, el mandato ls muestra un número total de bloques, incluyendo los bloques indirectos.
| -A | Lista todas las entradas excepto . (punto) y .. (punto-punto). |
| -a | Lista todas las entradas en el directorio, incluyendo las entradas que empiezan con un . (punto). |
| -b | Muestra los caracteres no imprimibles en notación octal (\nnn). |
| -c | Utiliza la hora de la última modificación del i-nodo para ordenar (cuando se utiliza con el distintivo -t) o para la visualización (cuando se utiliza con el distintivo -l). Este distintivo debe usarse con el distintivo -t, -l, o con ambos. |
| -C | Ordena la salida verticalmente en formato de varias columnas. Este es el método por omisión cuando la salida es en un terminal. |
| -d | Muestra sólo la información del directorio nombrado. Los directorios son tratados como archivos, lo cual es útil cuando se utiliza el distintivo -l para obtener el estado de un directorio. |
| -e | Muestra la modalidad (incluyendo la información de seguridad), número de enlaces, propietario, grupo, tamaño (en bytes), hora de la última modificación y nombre de cada archivo. Si el archivo es un archivo especial, el campo de tamaño contiene los números de dispositivo principal y secundario. Si el archivo es un enlace simbólico, el nombre de la vía de acceso del archivo al que se enlaza aparece precedido por un símbolo -> (menos, mayor que). Se muestran los atributos del enlace simbólico. |
| -E | Lista la información sobre reserva de espacio, tamaño extendido fijo y el distintivo de asignación ampliada de un archivo. -l debe especificarse con este distintivo. |
| -f | Lista el nombre en cada ranura de cada directorio especificado en el parámetro Directorio. Este distintivo desactiva los distintivos -l, -t, -s y -r, y activa el distintivo -a. El orden del listado es el orden en que las entradas aparecen en el directorio. |
| -F | Coloca / (barra inclinada) después de cada nombre de archivo si el archivo es un directorio,
* (asterisco) si el archivo puede ejecutarse, = (signo igual) si el archivo
es un socket, | (conducto) si el archivo es un FIFO y @ para un enlace
simbólico.
Nota: los enlaces simbólicos aparecen con el sufijo de cola -> sólo si se ha utilizado el distintivo -N o so el enlace apunta a un archivo no existente. En caso contrario, se mostrará información acerca del archivo de destino. También puede invocar esta opción entrando el mandato ls -f. |
| -g | Muestra la misma información que el distintivo -l, excepto por que el distintivo -g suprime la visualización del propietario y la información sobre enlaces simbólicos. |
| -H | Si se especifica un enlace simbólico que hace referencia a un archivo de tipo directorio en la línea de mandatos, el mandato ls evaluará la información del archivo y el tipo de archivo del tipo referenciado por el enlace y no el enlace en si mismo; no obstante, el mandato ls grabará el nombre del enlace y no el archivo al que hace referencia el enlace. |
| -i | Muestra el número de i-nodo en la primera columna del informe de cada archivo. |
| -L | Lista el contenido del archivo o directorio al que hace referencia el enlace. Esta es la acción por omisión. Se siguen los enlaces simbólicos. Si se utiliza la opción -l, la opción -N pasa a ser el valor por omisión, y no se sigue ningún enlace simbólico. Cuando se utiliza la opción -l, sólo la opción -L puede alterar temporalmente el valor por omisión de -N. |
| -l | (l en minúsculas) Muestra la modalidad, número de enlaces, propietario, grupo,
tamaño (en bytes) y hora de la última modificación de cada perfil. Si el archivo es un archivo especial, el campo de tamaño contiene los números de dispositivo
principal y secundario. Si la hora de la última modificación es anterior a seis meses, el campo hora
aparecerá con el formato mes día año mientras que
los archivos modificados en los últimos seis meses aparecen con el formato mes fecha hora.
Si el archivo es un enlace simbólico, el nombre de vía de acceso del archivo-enlazado aparece precedido de un ->. Se muestran los atributos del enlace simbólico. Los distintivos -n, -g, y -o alteran temporalmente el distintivo -l. Notas: |
| -m | Utiliza el formato de salida de flujos (una serie separada por comas). |
| -n | Muestra la misma información que el distintivo -l, excepto que el distintivo -n muestra el usuario y los ID de grupo en lugar del nombre de usuario y de grupo. |
| -N | No se siguen los enlaces simbólicos cuando se determina el estado de un archivo.
Nota: Si se utilizan las opciones -L y -N, prevalecerá la última opción. Además, siempre que un enlace simbólico incluya el carácter / (barra inclinada) como carácter final, el enlace será seguido automáticamente independientemente de las opciones que se utilicen. |
| -o | Muestra la misma información que el distintivo -l, excepto que el distintivo -o suprime la visualización de la información de grupo y de enlaces simbólicos. |
| -p | Coloca una barra después de cada nombre de archivo si el archivo es un directorio. Esto es útil
cuando redirige la salida del mandato ls
al mandato pr, como se muestra a continuación:
ls -p | pr -5 -t -w80 |
| -q | Muestra los caracteres no imprimibles en los nombres de archivos, como un ? (signo de interrogación). |
| -r | Invierte el orden de la clasificación, mostrando un orden alfabético inverso o la entrada más antigua primero, según corresponda. |
| -R | Lista todos los subdirectorios de forma recurrente. |
| -s | Proporciona el tamaño en kilobytes (incluyendo los bloques indirectos) de cada entrada. |
| -t | Ordena la salida por la hora de última modificación (la más reciente primero) en lugar de por nombre. |
| -U | Muestra información similar al distintivo -l. Muestra la modalidad (incluyendo información de seguridad y de los atributos ampliados con nombre), número de enlaces, propietario, grupo, tamaño (en bytes), hora de la última modificación, y nombre de cada archivo. Si el archivo es un archivo especial, el campo de tamaño contendrá los números de dispositivo principal y secundario. Si el archivo es un enlace simbólico, el nombre de la vía de acceso del archivo enlazado aparece precedido por un símbolo -> (menos, mayor que). Se muestran los atributos del enlace simbólico. |
| -u | Utiliza la hora de último acceso, en lugar de la hora de última modificación para ordenar (cuando se utiliza con el distintivo -t) o para la visualización (cuando se utiliza con el distintivo -l). Este distintivo no tiene efecto si no se utiliza con el distintivo -t, -l, o con ambos. |
| -x | Ordena la salida horizontalmente en formato de varias columnas. |
| -X | Imprime nombres de usuarios largos cuando se utiliza con otros distintivos que muestran nombres de usuario. El límite superior queda determinado por el atributo de ODM max_logname y las clases de objeto PdAt y CuAt. Si el nombre de un usuario es mayor que el atributo max_logname, se truncará hasta alcanzar el número de caracteres especificado por el atributo max_logname, menos un carácter. |
| -1 | Fuerza la salida en un formato de una única línea por entrada. Este es el valor por omisión cuando la salida no se dirige a un terminal. |
Este mandato devuelve los siguientes valores de salida:
| 0 | Se han escrito todos los archivos satisfactoriamente. |
| >0 | Se ha producido un error. |
ls -aDe esta manera se listan todos los archivos, incluyendo . (punto), .. (punto-punto) y otros archivos con nombres que comienzan con un punto.
ls -l chap1 .profileEsto muestra un listado largo con información detallada acerca de chap1 y .profile.
ls -d -l .manual manual/chap1Esto muestra un listado largo de los directorios . y manual, y del archivo manual/chap1. Sin el distintivo -d , se listarían los archivos dentro de los directorios . y manual en lugar de la información detallada acerca de los mismos directorios.
ls -l -tEsto muestra un listado largo de los archivos que han sido modificados recientemente, seguidos de los archivos más antiguos.
ls -lX .profileEsto muestra un listado largo con información detallada acerca de .profile.
ls -USalida de ejemplo:
-rwSr-x---+ 1 root system 28 Apr 29 03:23 only_aixc -rwSr-x---E 1 root system 4 Apr 29 03:23 only_aixc_ea -rw-r--r--E 1 root system 4 Apr 29 03:23 only_ea ----------+ 1 root system 265 Apr 29 03:23 only_nfs4 ----------E 1 root system 64 Apr 29 03:23 only_nfs4_ea -rw-r--r--- 1 root system 4 Apr 29 03:23 only_regular
| /usr/bin/ls | Contiene el mandato ls. |
| /etc/passwd | Contiene los ID de usuario. |
| /etc/group | Contiene los ID de grupo. |
| /usr/share/lib/terminfo/* | Contiene información sobre el terminal. |
El mandato chmod.