LS(1) LS(1)
General Commands Manual
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 multicolumna 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 de FIFO un `|', y tras cada nombre de un ejecutable un `*'. -R
un `/', tras cada nombre
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 fichero (número-í o número de nodo-í).
para
el
fichero por el número de serie del
Escribe (en formato de una sola columna) los permisos del fichero, el 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. número
-l de
-q Imprime los caracteres no imprimibles de fichero como signos de interrogación `?'. (Se permite que esto cuando la salida es una terminal.) -r
Invierte el orden de la clasificación.
-t
Clasifica por la marca de tiempo mostrada.
que
haya
sea
lo
en
un
nombre
predeterminado
-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 fileutils-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 están activados.
Si tanto el bit pegajoso (STI) como el ejecutable para `otros'
T `otros' no lo está.
Si el bit STI o pegajoso está activado pero el ejecutable para
x
Si el bit ejecutable está activado y no se aplica nada de lo
-
Otra cosa (no hay permiso).
anterior.
-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.
vez
-t, --sort=time Clasifica por el tiempo de modificación (el `mtime' en el nodo-í) en de alfabéticamente, con los ficheros más recientes en primer lugar.
-u, --time=atime, --time=access, Clasifica los contenidos tiempos de último acceso de los ficheros en vez de los de Si se está empleando el formato de listado largo, del de modificación.
--time=use de los directorios de acuerdo con los modificación (el `atime' en el
nodo-í).
muestra el tiempo de último acceso en vez
-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 foo.zml-1.gz foo.zml-100.gz foo.zml-12.gz foo.zml-25.gz izquierda
se
> ls -1v foo.zml-1.gz foo.zml-12.gz foo.zml-25.gz foo.zml-100.gz
También dese cuenta que las partes numéricas con consideran como fraccionarias: > ls -1 abc-1.007.tgz abc-1.012b.tgz abc-1.01a.tgz
ceros
a
la
> ls -1v abc-1.007.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. línea similar
Si los directorios se están listando recursivamente (-R), muestra una 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.
los
-S, --sort=size Clasifica los contenidos de los directorios por los tamaños ficheros en vez de alfabéticamente, con los ficheros más grandes en primer lugar.
de
-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 fileutils-
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 omisión de ls.
Muestra los nombres "tal cual". Éste es el comportamiento por
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.
cuando,
shell-always Entrecomilla los nombres para el intérprete de órdenes, aunque normalmente, no necesitaran entrecomillarse.
c Entrecomilla es lo mismo que la opción -Q.
los nombres como si fueran una cadena en C. Esto
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 con la variable de entorno QUOTING_STYLE. (Véase ENTORNO más abajo.)
para
esta
opción
--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 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.
y
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
[email protected]. Informe de fallos en el programa a
[email protected]. GNU fileutils 4.0 LS(1)
Noviembre de 1998