Cómo encontrar lo que significan los campos en ls -l [cerrado]

9

Mi pregunta no es qué significa cada campo, mi pregunta es cómo determinar qué significa cada campo.

La página de manual simplemente dice -l uso un formato de listado largo sin describir lo que implica el formato de listado largo.

monzie
fuente
1
Los diferentes sistemas operativos tendrán diferentes páginas de manual; ¿A qué sistema operativo te refieres?
Jeff Schaller
Posible duplicado de ¿Qué significan los campos en la salida ls -al?
G-Man dice 'Restablecer a Monica' el
No es un duplicado
monzie
No veo cómo esto está fuera de tema. La razón dice explícitamente "La única excepción son las preguntas sobre dónde encontrar documentación oficial", que es exactamente de lo que trata esta pregunta.
Calimo

Respuestas:

12

Al final de la página del manual para la implementación de GNU coreutils ls(como se encuentra en los sistemas Linux y algunos otros Unices):

SEE ALSO
       Full documentation at: <http://www.gnu.org/software/coreutils/ls>
       or available locally via: info '(coreutils) ls invocation'

Siguiendo el enlace al manual en línea, se ve una sección etiquetada "Qué información está listada" , que, entre otras cosas, describe el formato de salida largo con mayor detalle.

En la mayoría de los otros sistemas, el lsmanual es autónomo y describe el formato largo. Por ejemplo, el manual de OpenBSD ls (1) .

Cualquiera que sea el Unix en el que se encuentre , el lsmanual contendrá la información que necesita, o se referirá al otro manual relevante o documento en línea que contenga los detalles. Si no es así, debe informar esto como un error de documentación.


Buscar en Google lo que hace una opción a un comando es peligroso, ya que muchos comandos tienen extensiones no estándar que bien podrían implementarse de manera diferente en diferentes Unices, o incluso de manera diferente dependiendo de qué versión de la herramienta esté instalada. Lo que querría hacer es leer el manual en su sistema.

Si el manual no describe exactamente qué hace una opción o qué formato es, ya sea explícitamente o por referencia a otra documentación, entonces, como dije anteriormente, esto se consideraría un error de documentación.

Kusalananda
fuente
3

Mi lspágina de manual me da información completa sobre el formato largo. Supongo que esto debe ser igual en todos los sistemas. Desplácese hacia abajo, tal vez encontrará toda la información que necesita

El formato largo

Si -lse da la opción, se muestra la siguiente información para cada archivo: modo de archivo, número de enlaces, nombre del propietario, nombre del grupo, número de bytes en el archivo, mes abreviado, el día del mes se modificó por última vez, archivo de hora última modificación, archivo de minutos modificado por última vez y el nombre de ruta. Además, para cada directorio cuyos contenidos se muestran, el número total de bloques de 512 bytes utilizados por los archivos en el directorio se muestra en una línea, inmediatamente antes de la información de los archivos en el directorio. Si el archivo o directorio tiene atributos extendidos, el campo de permisos impreso por la -lopción va seguido de un carácter ' @'. De lo contrario, si el archivo o directorio tiene información de seguridad extendida (como una lista de control de acceso), el campo de permisos impreso por-lLa opción es seguida por un carácter ' +'.

Si el tiempo de modificación del archivo es más de 6 meses en el pasado o en el futuro, entonces se muestra el año de la última modificación en lugar de los campos de hora y minuto.

Si los nombres del propietario o del grupo no son un nombre de usuario o grupo conocido, o si -nse da la opción, se muestran las ID numéricas.

Si el archivo es un carácter especial o un archivo especial de bloque, los números de dispositivo mayor y menor para el archivo se muestran en el campo de tamaño. Si el archivo es un enlace simbólico, la ruta del archivo vinculado está precedida por ' ->'.

El modo de archivo impreso bajo la -lopción consiste en el tipo de entrada, los permisos de propietario y los permisos de grupo. El carácter de tipo de entrada describe el tipo de archivo, de la siguiente manera:

  • b Bloquear archivo especial.
  • c Archivo especial de caracteres.
  • d Directorio.
  • l Enlace simbólico.
  • s Enlace de enchufe.
  • p FIFO
  • - Archivo regular

Los siguientes tres campos tienen tres caracteres cada uno: permisos de propietario, permisos de grupo y otros permisos. Cada campo tiene tres posiciones de caracteres:

  1. Si r, el archivo es legible; si -, no es legible.
  2. Si w, el archivo se puede escribir; si -, no es escribible.
  3. El primero de los siguientes que se aplica:

    • SSi está en los permisos del propietario, el archivo no es ejecutable y se establece el modo set-user-ID. Si está en los permisos de grupo, el archivo no es ejecutable y se establece el modo set-group-ID.

    • sSi está en los permisos del propietario, el archivo es ejecutable y se establece el modo set-user-ID. Si está en los permisos de grupo, el archivo es ejecutable y se establece el modo set-group-ID.

    • x El archivo es ejecutable o se puede buscar en el directorio.

    • -El archivo no es legible, escribible, ejecutable, ni establece el modo de ID de usuario ni establece el modo de ID de grupo, ni es permanente. (Vea abajo.)

    Estos dos siguientes se aplican solo al tercer personaje del último grupo (otros permisos).

    • TEl bit fijo se establece (modo 1000), pero no se ejecuta ni se busca permiso. (Ver chmod(1)o sticky(8).)

    • tEl bit fijo se establece (modo 1000) y se puede buscar o ejecutar. (Ver chmod(1)o sticky(8).)

Arushix
fuente
44
Ciertamente no es lo mismo en todos los sistemas. Además, el manual de algunos sistemas aleatorios puede no ser relevante para la máquina local que está utilizando un usuario. Por ejemplo, Solaris tiene un tipo de archivo P(puerto de evento) que el manual de su sistema no menciona.
Kusalananda
1
Solaris también tiene un tipo de archivo D(puerta) que era lo suficientemente intrigante como para hacerme descubrir qué era una puerta; Creo que fue similar a una tubería.
Mark Stewart
1
@Mark - "La entrada es una puerta" en la página de manual de Solaris "ls" (su comentario despertó mi interés).
2

Considere usar el infocomando, como en info ls. Muchos comandos tienen documentación mucho más detallada aquí que en las páginas de manual. En este caso, obtendrá una versión fuera de línea de la misma documentación en el enlace en la respuesta de @ Kusalananda. Puede usar info -k <search term>para buscar en las páginas de información.

Otra forma de encontrar ayuda es el apropos <search term>comando, que busca los títulos y las descripciones de las páginas man para ayudarlo a encontrar lo que está buscando. Esto le ayuda a encontrar todas las secciones de una página de manual, que en el caso de lsmi sistema, son las secciones 1 (la predeterminada) y 1p. man 1p lstiene información sobre el formato de la salida.

bewilderex63
fuente
1
Sin infoembargo, el comando solo estaría disponible en sistemas con utilidades GNU.
Kusalananda
1
Es cierto, pero eso es muchos sistemas.
bewilderex63