En la computación , ls
es un comando a la lista de archivos de computadora en Unix y Unix-como sistemas operativos. ls
es especificado por POSIX y la Especificación Única de UNIX . Cuando se invoca sin ningún argumento, ls enumera los archivos en el directorio de trabajo actual . El comando también está disponible en el shell EFI . [1] En otros entornos, como DOS , OS / 2 y Microsoft Windows , el dir
comando proporciona una funcionalidad similar . La computación numéricaLos entornos MATLAB y GNU Octave incluyen una ls
función con una funcionalidad similar. [2] [3]
![]() Lista larga de archivos con " ls --color=auto -l" en Linux que muestra varios modos, formatos de fecha, colores e indicadores adjuntos (ejecutables y directorios). | |
Autor (es) original (es) | Richard Stallman y David MacKenzie |
---|---|
Desarrollador (es) | Varios desarrolladores comerciales y de código abierto |
Sistema operativo | Multics , Unix , similar a Unix , Plan 9 , Inferno , MSX-DOS , Mac OS |
Plataforma | Multiplataforma |
Tipo | Mando |
Licencia | coreutils : GPLv3 + |
Historia
Una ls
utilidad apareció en la primera versión de AT&T UNIX , el nombre heredado de un comando similar en Multics también llamado 'ls', abreviatura de la palabra "lista". [4] [5] [6] ls
es parte de X / Open Portability Guide desde el número 2 de 1987. Fue heredado en la primera versión de POSIX.1 y la Especificación Única de Unix . [7]
Un ls
comando es también parte de ASCII 's Herramientas MSX-DOS2 para MSX-DOS versión 2. [8]
Hoy en día, las dos versiones populares de ls
son la que se proporciona con el paquete GNU coreutils y la que se publica con varias variantes de BSD . Ambos son software libre y de código abierto , y solo tienen pequeñas diferencias de sintaxis. La versión de ls
coreutils incluida en GNU fue escrita por Richard Stallman y David MacKenzie. [9]
Comportamiento
Unix y Unix-como sistemas operativos mantienen la idea de un directorio de trabajo actual , es decir, cuando una se coloca actualmente en la jerarquía de directorios . Cuando se invoca sin argumentos, ls
enumera los archivos en el directorio de trabajo actual. Si se especifica otro directorio, entonces ls
se listarán los archivos allí y, de hecho, el usuario puede especificar cualquier lista de archivos y directorios que se incluirán en la lista.
Nombres de archivos que comienzan con "." se que no figuran menos que -a
se especifica (mostrar todos), -A
(mostrar todos excepto "" y "..") se especifica, o los archivos se especifican explícitamente.
Sin opciones, solo ls
muestra los nombres de los archivos. Las opciones más comunes para mostrar información adicional son:
-l
formato largo, que muestra tipos de archivos Unix , permisos, número de enlaces físicos , propietario, grupo, tamaño, fecha de última modificación y nombre de archivo-F
añada una "/" a los nombres de los directorios y un "*" a los archivos ejecutables.-g
mostrar grupo pero no propietario-o
mostrar propietario pero no grupo (cuando se combinan con-g
el grupo y el propietario se suprimen)-d
muestra información sobre un enlace o directorio simbólico, en lugar de sobre el destino del enlace o la lista del contenido de un directorio.-h
tamaños de salida en formato legible por humanos. (p. ej., 1K, 234M, 2G, etc.) Esta opción no forma parte del estándar POSIX, aunque está implementada en varios sistemas, p. ej., GNU coreutils en 1997, [10] FreeBSD 4.5 en 2002, [11] y Solaris 9 en 2002. [12]
Las opciones adicionales que controlan cómo se muestran los archivos incluyen:
-f
no clasifique. Útil para directorios que contienen una gran cantidad de archivos.-t
ordenar la lista de archivos por fecha de modificación. (el valor predeterminado es alfabéticamente)-1
(uno) forzar la salida a ser una entrada por línea.-R
enumerar archivos de forma recursiva en subdirectorios y sus subdirectorios ...
Con frecuencia es posible resaltar diferentes tipos de archivos con diferentes colores, en lugar de con caracteres como lo -F
haría. Esta es un área donde las dos ls
versiones principales difieren:
- GNU
ls
usa la--color
opción; comprueba el tipo de archivo Unix, los permisos del archivo y la extensión del archivo y usa su propia base de datos para controlar los colores mantenidos usando dircolors . - FreeBSD
ls
usa la-G
opción; comprueba solo el tipo de archivo Unix y los permisos de archivo. y utiliza la base de datos termcap [13]
Cuando se selecciona la opción de usar color para indicar los tipos de archivo, la salida puede verse así:
-rw-r - r-- 1 tsmitt nregion 26650 20 de diciembre 11:16 audio.ogg brw-r - r-- 1 tsmitt nregion 64, 64 27 de enero 05:52 bd-block-device crw-r-- r-- 1 tsmitt nregion 64, 255 26 de enero 13:57 cd-character-device -rw-r - r-- 1 tsmitt nregion 290 26 de enero 14:08 image.png drwxrwxr -x 2 tsmitt nregion 48 26 de enero 11 : 28 di-directory -rwxrwxr-x 1 tsmitt nregion 29 de enero 26 14:03 ex-ejecutable -rw-r - r-- 1 tsmitt nregion 0 dic 20 09:39 fi-regular-file lrwxrwxrwx 1 tsmitt nregion 3 de enero 26 11:44 ln-soft-link -> dir lrwxrwxrwx 1 tsmitt nregion 15 dic 20 10:57 or-orphan-link -> mi-missing-link drwxr-xrwx 2 tsmitt nregion 4096 dic 20 10:58 ow-other- writeable-dir prw-r - r-- 1 tsmitt nregion 0 26 de enero 11:50 pi-pipe -rwxr-sr-x 1 tsmitt nregion 0 20 de diciembre 11:05 sg-setgid srw-rw-rw- 1 tsmitt nregion 0 26 de enero 12:00 so-socket
drwxr-xr-t 2 tsmitt nregion 4096 20 de diciembre 10:58 st-sticky-dir
-rwsr-xr-x 1 tsmitt nregion 0 20 de diciembre 11:09 su-setuid
-rw-r --r-- 1 tsmitt nregion 10240 20 de diciembre 11:12 compressed.gz
drwxrwxrwt 2 tsmitt nregion 4096 20 de diciembre 11:10 tw-sticky-other-writeable-dir
Uso de muestra
El siguiente ejemplo demuestra la salida del ls
comando con dos argumentos diferentes:
$ ls -l drwxr - r-- 1 fjones editors 4096 borradores -rw-r - r-- 1 fjones editors 30405 edition-32 -r-xr-xr-x 1 fjones bookeepers 8460 edit.sh $ ls -F borradores / edición-32 edit.sh *
En el ejemplo anterior, el usuario fjones
tiene un directorio llamado drafts
, un archivo normal llamado edition-32
y un ejecutable llamado edit.sh
en su directorio de inicio. ls
utiliza la notación de permisos de archivos Unix para definir el acceso para el usuario (es decir, él mismo), los miembros del grupo para varios grupos y otros usuarios.
drwxr - r-- 1 fred editors 4096 Borradores del 1 de marzo de 2007
En este ejemplo, borradores es un directorio (indicado por el descriptor de archivo D), y los caracteres después de esto indican los permisos:
- rwx: el propietario (fjones) tiene derecho a leer (r), escribir (w) y ejecutar (X)
- r--: usuarios que son miembros de la editoresel grupo tiene permisos de solo lectura; escribir y ejecutar no están permitidos, como se indica con los caracteres de guión (-)
- r--: otros (usuarios además del propietario o miembros de editores) tienen permisos de solo lectura; escribir y ejecutar no están permitidos
Ver también
- chown
- chgrp
- du (Unix)
- mdls
- Identificador de usuario (Unix)
- Identificador de grupo (Unix)
- Lista de comandos de Unix
- Estructura de directorios de Unix
Referencias
- ^ "Cáscaras de EFI y secuencias de comandos" . Intel . Consultado el 25 de septiembre de 2013 .
- ^ https://www.mathworks.com/help/matlab/ref/ls.html
- ^ https://octave.sourceforge.io/octave/function/ls.html
- ^ Página de manual de Multics para el comando ls o list
- ^ "Una breve historia del comando 'ls'" , Eric Fischer, Proyecto de documentación de Linux
- ^ "Manual del programador de Multics - Comandos y funciones activas" (PDF) . pag. 397.
- ^ - Referencia de comandos y utilidades, la especificación única de UNIX , número 7 de The Open Group
- ^ Manual de usuario de herramientas MSX-DOS2 de ASCII Corporation
- ^ - Manual de comandos generales de Linux ; - Manual de comandos generales de FreeBSD
- ^ "(decode_switches): -h y -H anulan las unidades de salida" . coreutils.git. 1997-12-31.
- ^ "[base] Registro de /stable/10/bin/ls/ls.c" . 2001-12-28.
- ^ Novedades del entorno operativo Solaris 9 , Sun Microsystems, 2002
- ^ "Páginas Man de FreeBSD - ls" . Consultado el 23 de junio de 2013 .
enlaces externos
- - Referencia de comandos y utilidades, la especificación única de UNIX , número 7 de The Open Group
- - Manual de comandos generales de FreeBSD
- - Manual de comandos generales de NetBSD
- - Manual de comandos generales de OpenBSD
- - Manual de referencia de comandos de usuario de Solaris 10
- - Manual de comandos de usuario de Linux
- - Manual del programador de Plan 9 , Volumen 1
- - Manual de comandos generales de Inferno
- lsCódigo fuente GNU (como parte de coreutils)
ls
en la wiki de LinuxQuestions.org