LS(1) LS(1)
NOMBRE
ls, dir, vdir - listan los contenidos de directorios
SINOPSIS
ls [opciones] [fichero...]
dir [fichero...]
vdir [fichero...]
Opciones de POSIX: [-CFRacdilqrtu1]
Opciones de GNU (en la forma más corta):
[-1abcdfghiklmnopqrstuvwxABCDFGHLNQRSUX] [-w cols] [-T cols] [-I
patrón] [--full-time] [--show-control-chars] [--block-size=tamaño]
[--format={long,verbose,commas,across,vertical,single-column}]
[--sort={none,time,size,extension}]
[--time={atime,access,use,ctime,status}] [--color[={none,auto,always}]]
[--help] [--version] [--]
DESCRIPCIÓN
El programa ls lista primero sus argumentos no directorios fichero, y
luego para cada argumento directorio todos los ficheros susceptibles de
listarse contenidos en dicho directorio. Si no hay presente ningún
argumento aparte de las opciones, se supone un argumento predeterminado
`.' (el directorio de trabajo). La opción -d hace que los directorios
se traten como argumentos no directorios; es decir, como ficheros
normales. Un fichero es susceptible de listarse cuando su nombre no
comienza con `.' o cuando se da la opción -a (o -A, vea más abajo).
Cada una de las listas de ficheros (las de ficheros no directorios, y
para cada directorio la lista de ficheros de dentro) se clasifica
separadamente según la secuencia de clasificación en la localización en
curso. Cuando se da la opción -l, cada lista se precede por una línea
de sumario que da el tamaño total de todos los ficheros en la lista,
medidos en semi-kilobytes (512 B).
La salida es a la salida estándar, una entrada por cada línea, a menos
que se pida una salida multi-columna mediante la opción -C. Sin
embargo, para la salida en una terminal, no está definido si la salida
será en una sola columna o en varias. Las opciones -1 y -C se pueden
emplear para forzar la salida en una o en varias columnas,
respectivamente.
OPCIONES DE POSIX
-C Lista los ficheros en columnas, ordenados verticalmente.
-F Añade tras cada nombre de directorio un `/', tras cada nombre de
FIFO un `|', y tras cada nombre de un ejecutable un `*'.
-R Lista recursivamente los subdirectorios encontrados.
-a Incluye en el listado ficheros cuyos nombres empiecen por `.'.
-c Emplea el tiempo de cambio de estado en vez del de modificación
para la clasificación (con -t) o el listado (con -l).
-d Lista nombres de directorios como otros ficheros, en vez de
listar sus contenidos.
-i Precede la salida para el fichero por el número de serie del
fichero (número-í o número de nodo-í).
-l Escribe (en formato de una sola columna) los permisos del
fichero, el número de enlaces que tiene, el nombre del
propietario, el del grupo al que pertenece, el tamaño (en
bytes), una marca de tiempo, y el nombre del fichero. De forma
predeterminada, la marca de tiempo que se muestra es la de la
última modificación; las opciones -c y -u seleccionan las otras
dos que hay. Para ficheros especiales de dispositivo el campo
de tamaño se reemplaza comúnmente por los números de dispositivo
mayor y menor.
-q Imprime los caracteres no imprimibles que haya en un nombre de
fichero como signos de interrogación `?'. (Se permite que esto
sea lo predeterminado cuando la salida es una terminal.)
-r Invierte el orden de la clasificación.
-t Clasifica por la marca de tiempo mostrada.
-u Emplea el tiempo de último acceso en vez del de modificación
para la clasificación (con -t) o el listado (con -l).
-1 Para la salida en una sola columna.
DETALLES DE GNU
Si la salida estándar es una terminal, la salida es en columnas
(ordenadas verticalmente).
dir (también instalado como d) es equivalente a `ls -C -b'; esto es,
los ficheros se listan de forma predeterminada en columnas, ordenadas
verticalmente. vdir (también instalado como v) es equivalente a
`ls -l -b'; esto es, los ficheros se listan de forma predeterminada en
el formato largo.
OPCIONES DE GNU
-1, --format=single-column
Lista un fichero por línea. Esto es lo predeterminadao cuando la
salida estándar no es una terminal.
-a, --all
Lista todos los ficheros en directorios, incluyendo todos los
ficheros cuyos nombres comiencen por `.'.
-b, --escape, --quoting-style=escape
Muestra los caracteres no gráficos en nombres de ficheros
empleando secuencias de escape alfabéticas y octales como las
empleadas en el lenguaje C. Esta opción es la misma que -Q salvo
que no se delimintan los nombres de fichero por comillas dobles.
-c, --time=ctime, --time=status
Clasifica los contenidos del directorio de acuerdo con los
tiempos de cambio de estado de los ficheros (el `ctime' en el
nodo-í). Si el formato de listado largo se está empleando (-l)
muestra el tiempo de cambio de estado en vez del de
modificación.
-d, --directory
Lista nombres de directorios como otros ficheros, en vez de
listar sus contenidos.
-f No ordena los contenidos del directorio; los lista en el orden
en que estén almacenados en el disco. También activa -a y -U y
desactiva -l, --color, -s y -t si se especificaron antes de -f.
-g No hace nada; por compatibilidad con otras versiones de Unix.
-h, --human-readable
Añade una letra indicativa de tamaño, tal como M para megabytes
binarios (`mebibytes'), a cada tamaño. (Nueva en file?
utils-4.0.)
-i, --inode
Muestra el número de nodo-í (también llamado el número de serie
del fichero o el número índice o número-í) de cada fichero a la
izquierda de su nombre. (Este número identifica de forma
inequívoca a cada fichero dentro de un sistema de ficheros
particular.)
-k, --kilobytes
Si se están listando los tamaños de ficheros, los muestra en
kilobytes.
-l, --format=long, --format=verbose
Además del nombre de cada fichero, muestra el tipo del fichero,
los permisos, el número de enlaces duros, el nombre del
propietario, el del grupo al que pertenece, el tamaño en bytes,
y la marca de tiempo (el tiempo de modificación a menos que se
seleccione otro). Para ficheros con un tiempo de más de 6 meses
o de más de 1 hora en el futuro, la marca de tiempo contiene el
año en lugar de la hora del día.
Para cada directorio que se liste, escribe antes de los ficheros
una línea `total bloques', donde bloques es el espacio de disco
total usado por todos los ficheros en ese directorio. Por
omisión, se emplean bloques de 1024 bytes; si la variable de
entorno POSIXLY_CORRECT está definida, se usan bloques de 512
bytes (a menos que se haya dado la opción -k). Los bloques
computados cuentan cada enlace duro separadamente; esto es
discutiblemente una deficiencia.
Los permisos listados son similares a especificaciones de modo
simbólico, pero ls combina varios bits en el tercer carácter de
cada conjunto de permisos.
s Si están activados tanto el bit SETUID o SETGID como el
correspondiente de ejecutable.
S Si está activado el bit SETUID o SETGID pero no el
correspondiente de ejecutable.
t Si tanto el bit pegajoso (STI) como el ejecutable para
`otros' están activados.
T Si el bit STI o pegajoso está activado pero el ejecutable
para `otros' no lo está.
x Si el bit ejecutable está activado y no se aplica nada de
lo anterior.
- Otra cosa (no hay permiso).
-m, --format=commas
Lista los ficheros horizontalmente, con tantos como quepan en
cada línea, separados unos de otros por una coma y un espacio.
-n, --numeric-uid-gid
Lista los UID y GID numéricos en vez de los nombres.
-o Produce listados de directorio en el formato largo, pero no
muestra información de grupo, como la opción -l antigua. Es
equivalente a emplear --format=long --no-group. Esta opción se
proporciona por compatibilidad con otras versiones de ls.
-p, --file-type, --indicator-style=file-type
Añade un carácter a cada nombre de fichero indicando el tipo del
fichero. Esto es como -F salvo en que los ejecutables no se
marcan. (De hecho, fileutils-4.0 trata la opción --file-type
como --classify.)
-q, --hide-control-chars
Muestra signos de interrogación `?' en vez de caracteres no
gráficos en nombres de ficheros. Esto es el comportamiento
predeterminado.
-r, --reverse
Clasifica los contenidos de directorios en orden inverso.
-s, --size
Muestra el tamaño de cada fichero en bloques de 1024 bytes a la
izquierda del nombre. Si la variable de entorno POSIXLY_CORRECT
está definida, se emplean en su lugar bloques de 512 bytes, a
menos que se haya dado la opción -k.
-t, --sort=time
Clasifica por el tiempo de modificación (el `mtime' en el
nodo-í) en vez de alfabéticamente, con los ficheros más
recientes en primer lugar.
-u, --time=atime, --time=access, --time=use
Clasifica los contenidos de los directorios de acuerdo con los
tiempos de último acceso de los ficheros en vez de los de
modificación (el `atime' en el nodo-í). Si se está empleando el
formato de listado largo, muestra el tiempo de último acceso en
vez del de modificación.
-v Clasifica los contenidos de los directorios de acuerdo a la
versión de los ficheros. Esto tiene en cuenta el hecho de que
los nombres de los ficheros incluyen con frecuencia índices o
números de versión. Las funciones de ordenación estándares no
producen normalmente el orden que la gente espera ya que las
comparaciones se hacen carácter a carácter. La ordenación por
versión soluciona este problema, siendo especialmente útil
cuando se recorren directorios que contienen muchos ficheros con
índices/número de versión en sus nombres. Por ejemplo:
> ls -1 > ls -1v
foo.zml-1.gz foo.zml-1.gz
foo.zml-100.gz foo.zml-12.gz
foo.zml-12.gz foo.zml-25.gz
foo.zml-25.gz foo.zml-100.gz
También dese cuenta que las partes numéricas con ceros a la
izquierda se consideran como fraccionarias:
> ls -1 > ls -1v
abc-1.007.tgz abc-1.007.tgz
abc-1.012b.tgz abc-1.01a.tgz
abc-1.01a.tgz abc-1.012b.tgz
(Nueva en fileutils-4.0.)
-w, --width cols
Asume que la pantalla tiene cols columnas de ancho. El valor
predeterminado se toma del controlador de terminal si es
posible; si no, se emplea la variable de ambiente COLUMNS si
está definida; de otro modo el valor predeterminado es 80.
-x, --format=across, --format=horizontal
Lista los ficheros en columnas, ordenados horizontalmente.
-A, --almost-all
Lista todos los ficheros en los directorios, excepto `.' y `..'.
-B, --ignore-backups
No lista los ficheros que acaben en `~', a menos que se den sus
nombres en la línea de órdenes como argumentos.
-C, --format=vertical
Lista ficheros en columnas, ordenadas verticalmente. Esto es lo
predeterminado si la salida estándar es una terminal. Siempre es
el comportamiento predeterminado también para dir y d.
-D, --dired
Con el formato de listado largo (-l), imprime una línea
adicional tras la salida principal:
//DIRED// COM1 FIN1 COM2 FIN2 ...
Los COMn y FINn son enteros positivos que guardan la posición en
bytes del COMienzo y el FINal respectivamente de cada nombre de
fichero en la salida. Esto hace más fácil a Emacs encontrar los
nombres, incluso si contienen caracteres inusuales como espacios
o nuevas-líneas, sin tener que andar buscando.
Si los directorios se están listando recursivamente (-R),
muestra una línea similar tras cada subdirectorio:
//SUBDIRED// COM1 FIN1 ...
-F, --classify, --indicator-style=classify
Añade un carácter a cada nombre de fichero indicando el tipo del
fichero. Para ficheros regulares que sean ejecutables, añade un
`*'. Los indicadores de tipos de ficheros son `/' para
directorios, `@' para enlaces simbólicos, `|' para FIFOs, `='
para conectores, y nada para ficheros regulares.
-G, --no-group
Inhibe la salida de información de grupo en un listado de
directorio en formato largo.
-H, --si
Hace lo mismo que -h pero usa las unidades oficiales del SI (con
potencias de 1000 en vez de 1024, por lo que M significa 1000000
en lugar de 1048576). (Nueva en fileutils-4.0.)
-I, --ignore=patrón
No lista los ficheros cuyos nombres concuerden con el patrón del
shell patrón (esto no es una expresión regular) a menos que se
den en la línea de órdenes como argumentos. Como en el shell, un
`.' inicial en un nombre de fichero no concuerda con un comodín
al principio de patrón.
-L, --dereference
Lista la información del fichero correspondiente a un enlace
simbólico en lugar de la del mismo enlace.
-N, --literal
No hace nada con los caracteres no gráficos en nombres de
ficheros; los muestra en la salida tal cual.
-Q, --quote-name, --quoting-style=c
Encierra los nombres de ficheros entre comillas dobles y muestra
los caracteres no gráficos de sus nombres como en el lenguaje C.
-R, --recursive
Lista los contenidos de todos los directorios recursivamente.
-S, --sort=size
Clasifica los contenidos de los directorios por los tamaños de
los ficheros en vez de alfabéticamente, con los ficheros más
grandes en primer lugar.
-T, --tabsize=cols
Asume que cada parada de tabulación está a cols columnas de
ancho; el valor predeterminado es 8. ls emplea tabuladores
donde es posible en la salida, por eficiencia. Si cols es cero,
no usa tabuladores para nada.
-U, --sort=none
No clasifica los contenidos de directorios; los lista en el
orden en que estén almacenados en el disco. (La diferencia entre
-U y -f es que el primero no desactiva o activa opciones.) Esto
es especialmente de utilidad cuando se listen directorios muy
grandes, puesto que al no efectuar ninguna ordenación puede ir
bastante más rápido.
-X, --sort=extension
Clasifica los contenidos del directorio alfabéticamente por las
extensiones de los ficheros (caracteres tras el último `.'); los
ficheros sin extensión se ponen en primer lugar.
--block-size=tamaño
Muestra los tamaños en bloques de tamaño bytes. (Nueva en file?
utils-4.0.)
--color[=cuándo]
Especifica si emplear color para distinguir tipos de ficheros.
Los colores se especifican mediante la variable de entorno
LS_COLORS. Para información acerca de cómo definir esta
variable, consulte dircolors(1). cuándo puede omitirse, o ser
uno de:
none No emplear color en absoluto. Esto es lo predeterminado.
auto Emplear color solamente si la salida estándar es una
terminal.
always Emplear color siempre. Especificar --color y no cuándo es
equivalente a --color=always.
--full-time
Lista los tiempos al completo, en vez de emplear los métodos
heurísticos para las abreviaturas normales. El formato es el
mismo que el predeterminado de date(1); no es posible cambiar
esto, pero uno puede extraer la cadena de fecha con cut(1) y
luego pasar el resultado a `date -d'.
Esto es mayormente de utilidad porque la salida de tiempo
incluye los segundos. (Los sistemas de ficheros de Unix
almacenan las marcas de tiempo solamente al segundo más cercano,
de forma que esta opción muestra toda la información que hay.)
Por ejemplo, esto puede ayudar cuando uno tiene un Makefile que
no esté regenerando correctamente los ficheros.
--quoting-style=word
Usa el estilo word para entrecomillar los nombres de salida. El
parámetro word debe ser uno de los siguientes:
literal
Muestra los nombres "tal cual". Éste es el comportamiento
por omisión de ls.
shell Entrecomilla los nombres para el intérprete de órdenes si
estos contienen metacaracteres del intérprete de órdenes
o si pueden producir una salida ambigüa.
shell-always
Entrecomilla los nombres para el intérprete de órdenes,
aunque cuando, normalmente, no necesitaran
entrecomillarse.
c Entrecomilla los nombres como si fueran una cadena en C.
Esto es lo mismo que la opción -Q.
escape Entrecomilla como con c pero omite las comillas dobles
que delimitan el nombre. Esto es lo mismo que la opción
-b.
Se puede especificar un valor por omisión para esta opción con
la variable de entorno QUOTING_STYLE. (Véase ENTORNO más
abajo.)
--show-control-chars
Muestra los caracteres no gráficos "tal cual" en los nombres de
los ficheros. Esto es lo que suele ocurrir a menos que la salida
sea una terminal y el programa sea ls.
OPCIONES ESTÁNDARES DE GNU
--help Muestra un mensaje en la salida estándar sobre el modo de empleo
y acaba con estado de éxito.
--version
Muestra en la salida estándar información sobre la versión, y
luego acaba con estado de éxito.
-- Termina con la lista de opciones.
ENTORNO
La variable POSIXLY_CORRECT determina la elección de la unidad. Si no
está definida, entonces la variable TABSIZE determina el número de
caracteres por cada parada de tabulador. La variable COLUMNS (cuando
contiene la representación de un entero en base 10) determina la
anchura de columna de salida (para el empleo con la opción -C). Los
nombres de ficheros no deben ser truncados para que quepan en una
salida multi-columna.
Las variables LANG, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES y LC_TIME
tienen los significados usuales. La variable TZ da el huso horario
para cadenas de tiempo escritas por ls. La variable LS_COLORS se
emplea para especificar los colores empleados.
La variable QUOTING_STYLE se usa para especificar el valor por omisión
para la opción --quoting-style. Su valor actual por omisión es
literal, aunque los autores han advertido que podría cambiar a shell en
alguna versión futura de ls.
FALLOS
En sistemas BSD, la opción -s da tamaños que son la mitad de los
valores correctos para ficheros que están montados por NFS desde
sistemas HP-UX. En sistemas HP-UX, da tamaños que son el doble de los
valores correctos para ficheros que están montados por NFS desde
sistemas BSD. Esto es debido a un defecto de HP-UX; también afecta al
programa ls de HP-UX.
CONFORME A
POSIX 1003.2.
VÉASE TAMBIÉN
dircolors(1)
OBSERVACIONES
Esta página describe ls según se encuentra en el paquete fileutils-4.0;
otras versiones pueden diferir un poco. Envíe por correo electrónico
correcciones y adiciones a la dirección aeb@cwi.nl. Informe de fallos
en el programa a fileutils-bugs@gnu.ai.mit.edu.
GNU fileutils 4.0 Noviembre de 1998 LS(1)