Der ls -al
Befehl zeigt die folgende Ausgabe;
-rwxrw-r-- 10 root root 2048 Jan 13 07:11 afile.exe
Was sind alle Felder in der vorhergehenden Anzeige?
Der ls -al
Befehl zeigt die folgende Ausgabe;
-rwxrw-r-- 10 root root 2048 Jan 13 07:11 afile.exe
Was sind alle Felder in der vorhergehenden Anzeige?
Antworten:
In der Reihenfolge der Ausgabe;
-rwxrw-r-- 1 root root 2048 Jan 13 07:11 afile.exe
Dateiberechtigungen werden wie folgt angezeigt:
-
oder l
oder d
, d gibt ein Verzeichnis an, eine Zeile stellt eine Datei dar, l ist ein Symlink (oder Softlink) - ein spezieller DateitypIn Ihrem Beispiel -rwxrw-r--
bedeutet dies, dass folgende Zeile angezeigt wird:
-
nicht ist nicht-Verzeichnisse , es ist normale Dateien , gibt es mehr als r
, w
und x
Berechtigungen. Bei den meisten Systemen wird das erste Feld auch verwendet, um das Vorhandensein zusätzlicher Attribute wie ACLs, Sicherheitsattribute oder anderer erweiterter Attribute anzuzeigen. Beachten Sie auch, dass bei Symlinks das Ziel des Symlinks auch in der Ausgabe von angezeigt wird ls -l
.
b
D , and
p`). Es gibt eine vollständige Erklärung auf Wikipedia .
number of links
bedeutet Vielen Dank.
info ls
has more info
Die Ausgabe des Befehls "ls" hängt von der Version von "ls", den verwendeten Optionen, der verwendeten Plattform usw. ab. Aus Ihrem Beispiel geht hervor, dass Sie es von einem typischen un * x (wie Linux) aus verwenden. und wahrscheinlich mit einer typischen modernen "ls" -Version. In welchem Fall:
-rwxrw-r-- 10 root root 2048 Jan 13 07:11 afile.exe
?UUUGGGOOOS 00 UUUUUU GGGGGG #### ^-- date stamp and file name are obvious ;-)
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | \--- File Size
| | | | | | | \-------- Group Name (for example, Users, Administrators, etc)
| | | | | | \--------------- Owner Acct
| | | | | \---------------------- Link count (what constitutes a "link" here varies)
| | | | \--------------------------- Alternative Access (blank means none defined, anything else varies)
| \--\--\----------------------------- Read, Write and Special access modes for [U]ser, [G]roup, and [O]thers (everyone else)
\------------------------------------- File type flag
Ich bin mir nicht sicher, warum Ihre Linkanzahl für die von Ihnen aufgeführte Beispieldatei so hoch ist. Einige Plattformen haben eine seltsame Vorstellung davon, was ein "Link" ist. Dazu gehören normalerweise feste und symbolische Verknüpfungen sowie Verzeichniseinträge (weshalb Verzeichnisse häufig eine hohe Verknüpfungsanzahl aufweisen - das übergeordnete Verzeichnis verfügt über eine Verknüpfung, das Verzeichnis über eine Verknüpfung zu sich selbst im .
Eintrag und jedes seiner Unterverzeichnisse verfügt über eine Verknüpfung ein link zurück via ..
).
Einige Versionen und / oder Befehlszeilen-Flags listen die Anzahl der verwendeten Blöcke anstelle der Anzahl der Bytes auf. Ein Dateisystem mit einer Blockgröße von 1024 Bytes listet alle Größen bis zu 1024 Bytes als "1" auf, was bedeutet, dass 1 Block verwendet wird, von 1025 bis 2048 als "2", unter Verwendung von 2 Blöcken usw. Die Auflistung von Blockgrößen (ohne explizite Verwendung einer Befehlszeilenoption) ist auf den meisten modernen un * x-Computern jedoch selten.
Das Sonder- / Alternativzugriffsflag ist normalerweise ein Leerzeichen. Auf einigen Plattformen kann es jedoch verwendet werden, um darauf hinzuweisen, dass es Sonder- / Alternativzugriffsmodi gibt (z. B. ACLs und Sicherheitsbeschreibungen für WIN32 usw.) , Manpages, Info-Tool oder was-nicht.
Die Berechtigungs- (Modus-) Flags (UUUGGGOOO) sind drei Sätze von drei Zeichen, wobei der erste Satz "Benutzer" (dh Eigentümer), der zweite Satz "Gruppe" und der dritte Satz "Andere" (dh alle anderen) ist wer weder Eigentümer noch Gruppe ist). Die drei Berechtigungsflags in jeder Gruppe sind normalerweise r
oder -
bedeuten, dass Benutzer / Gruppe / Andere die Datei lesen können ( r
) oder nicht ( -
), gefolgt von w
oder angegeben -
, ob sie in die Datei schreiben können (Sie können Dateien haben, in die Sie schreiben können, kann aber nicht lesen, so seltsam das auch klingen mag!) und das dritte Zeichen ist ein 'catch-all'-Flag für andere Modi, normalerweise so etwas wie' x
execute '(für Verzeichnisse bedeutet dies, dass Sie versuchen können, auf den Verzeichnisinhalt zuzugreifen). oder -
für niemanden.s
oder S
für setuid- und / oder setgid-Programme oder andere weniger gebräuchliche Zeichen; In Ihrer "ls" -Dokumentation finden Sie Informationen zu den angezeigten Moduszeichen.
Das allererste Zeichen ist der Dateityp. In der Regel eine der folgenden Optionen: d
für Verzeichnis, l
für eine symbolische Verknüpfung (feste Verknüpfungen werden normalerweise ohne eigenes Sonderzeichen angezeigt) oder -
für eine normale Datei. Es gibt viele andere, jedoch weniger häufig vorkommende Dateitypen für verschiedene Dateisysteme. Diese ersten zehn Zeichen (Dateityp und Berechtigungen) werden in Wikipedia behandelt . In Ihrer Dokumentation erfahren Sie auch hier genau, welche Dateitypen Ihr Befehl unterstützt und anzeigt.
Übrigens, wenn Sie keine Man / Info-Seite für "ls" selbst finden können ("man ls" / "info ls"), schauen Sie im Paket "coreutils" ("info coreutils") nach. Beachten Sie auch, dass Microsoft-Plattformen unter den gängigeren Plattformen dazu neigen, nicht sehr gut in die Ausgabe von "ls" zu übersetzen. Je nach der Version von "ls" werden in der Ausgabe daher möglicherweise ungewöhnliche Verhaltensweisen, Flags oder andere ungewöhnliche Informationen angezeigt kompiliert, worauf es ankam, etc.
Noch eine Einschränkung: Der Datei-Zeitstempel ist normalerweise das Datum und die Uhrzeit der letzten Änderung der Datei und nicht die Uhrzeit, zu der die Datei erstellt wurde. Tatsächlich gibt es auf einem un * x-ish-Dateisystem keine Aufzeichnung der Dateierstellungszeit. Das Feld ctime bedeutet NICHT "Erstellungszeit", wie dies bei FAT / NTFS-Dateisystemen der Fall ist, sondern die "Inode-Änderungszeit [C]" - die Zeit, zu der der Inode selbst zuletzt geändert wurde. Die Zeitstempel "mtime" (last [M] odified) und "atime" (last [A] ccesed / read) sind auf beiden Systemen gleich - obwohl die Genauigkeit (FAT hat zum Beispiel eine Granularität von zwei Sekunden) und die Zeitzone variieren können .
Auf GNU-Systemen wird es auf der ls
Infoseite sehr detailliert beschrieben. Alles , was Sie tun mußten, um es zu finden: einfach offen man ls
und am Ende Link zur vollständigen Dokumentation: info coreutils 'ls invocation'
.
Hier ist ein Zitat davon:
`-l'
`--format=long'
`--format=verbose'
In addition to the name of each file, print the file type, file
mode bits, number of hard links, owner name, group name, size, and
timestamp (*note Formatting file timestamps::), normally the
modification time. Print question marks for information that
cannot be determined.
Normally the size is printed as a byte count without punctuation,
but this can be overridden (*note Block size::). For example, `-h'
prints an abbreviated, human-readable count, and
`--block-size="'1"' prints a byte count with the thousands
separator of the current locale.
For each directory that is listed, preface the files with a line
`total BLOCKS', where BLOCKS is the total disk allocation for all
files in that directory. The block size currently defaults to 1024
bytes, but this can be overridden (*note Block size::). The
BLOCKS computed counts each hard link separately; this is arguably
a deficiency.
The file type is one of the following characters:
`-'
regular file
`b'
block special file
`c'
character special file
`C'
high performance ("contiguous data") file
`d'
directory
`D'
door (Solaris 2.5 and up)
`l'
symbolic link
`M'
off-line ("migrated") file (Cray DMF)
`n'
network special file (HP-UX)
`p'
FIFO (named pipe)
`P'
port (Solaris 10 and up)
`s'
socket
`?'
some other file type
The file mode bits listed are similar to symbolic mode
specifications (*note Symbolic Modes::). But `ls' combines
multiple bits into the third character of each set of permissions
as follows:
`s'
If the set-user-ID or set-group-ID bit and the corresponding
executable bit are both set.
`S'
If the set-user-ID or set-group-ID bit is set but the
corresponding executable bit is not set.
`t'
If the restricted deletion flag or sticky bit, and the
other-executable bit, are both set. The restricted deletion
flag is another name for the sticky bit. *Note Mode
Structure::.
`T'
If the restricted deletion flag or sticky bit is set but the
other-executable bit is not set.
`x'
If the executable bit is set and none of the above apply.
`-'
Otherwise.
Following the file mode bits is a single character that specifies
whether an alternate access method such as an access control list
applies to the file. When the character following the file mode
bits is a space, there is no alternate access method. When it is
a printing character, then there is such a method.
GNU `ls' uses a `.' character to indicate a file with an SELinux
security context, but no other alternate access method.
A file with any other combination of alternate access methods is
marked with a `+' character.
/dev/
Die erste Spalte ist der Dateimodus, die nächste Spalte ist die Nummer des Links, über den die Datei verfügt, die dritte und vierte Spalte sind der Name des Besitzers und die Gruppe, zu der die Datei gehört. In der nächsten Spalte wird die Anzahl der Bytes der Datei angegeben (bei einigen ls
Implementierungen besteht die -h
Möglichkeit, diese Informationen in einer benutzerfreundlicheren Form anzuzeigen). Die letzten beiden Spalten geben den Zeitstempel und den Namen der Datei an. Weitere Informationen finden Sie in der Manpage.