Ls

ls
Ls --color=auto -ls linux.png
Lange Dateiauflistung mit "ls - -color = auto -l"In Linux zeigt verschiedene Modi, Datumsformate, Farben und angehängte Indikatoren (ausführbare Verzeichnisse).
Originalautor (en) CoreUtils: Richard Stallman und David Mackenzie
Entwickler (en) Verschiedene Open Source und kommerziell Entwickler
Geschrieben in C
Betriebssystem Mehrheit, Unix, Unix-artig, Plan 9, Inferno, MSX-dos
Typ Befehl
Lizenz CoreUtils: GPLV3+
Busybox: Nur GPL-2.0
Spielzeugbox: 0bsd
Plan 9: MIT -Lizenz

Im Computer, ls ist ein Befehl zu aufführen Computerdateien in Unix und Unix-artig Betriebssysteme. ls wird angegeben durch Posix und die Einzel -Unix -Spezifikation. Wenn LS ohne Argumente aufgerufen wird, listet er die Dateien in den Leitungen auf Aktuelles Arbeitsverzeichnis. Der Befehl ist auch in der erhältlich EFI -Hülle.[1] In anderen Umgebungen, wie z. DOS, OS/2, und Microsoft Windows, ähnliche Funktionen werden von der bereitgestellt Dir Befehl. Das Numerisches Computer Umgebungen Matlab und Gnu octave einbeziehen ein ls Funktion mit ähnlicher Funktionalität.[2][3]

Geschichte

Ein ls Dienstprogramm erschien in der ersten Version von AT&T Unix, der Name, der aus einem ähnlichen Befehl in geerbt wurde Mehrheit auch "ls" genannt, kurz für das Wort "Liste".[4][5][6] ls ist Teil von X/offen Portabilitätshandbuch seit Ausgabe 2 von 1987. Es wurde in die erste Version von POSIX.1 und der geerbt Einzel -Unix -Spezifikation.[7]

Ein ls Befehl ist auch Teil von ASCII's MSX-DOS2-Tools zum MSX-dos Version 2.[8]

Heute die beiden beliebten Versionen von ls sind die mit dem versehen GNU CoreUtils Paket und das von verschiedenen veröffentlicht BSD Varianten. Beide sind gratis Software und Open Sourceund haben nur geringfügige Syntaxunterschiede. Die Version von ls in GNU CoreUtils gebündelt wurde von geschrieben von Richard Stallman und David Mackenzie.[9]

Der Befehl ist als separates Paket für verfügbar Microsoft Windows Im Rahmen des Unxutils Sammlung von einheimisch Win32 Häfen von gemeinsamen GNU-Unix-ähnlichen Versorgungsunternehmen.[10]

Verhalten

Unix und Unix-artig Betriebssysteme beibehalten die Idee von a Aktuelles Arbeitsverzeichnis, das heißt, wo man derzeit in der Hierarchie von positioniert ist Verzeichnisse. Wenn er ohne Argumente aufgerufen wird, ls Listet die Dateien im aktuellen Arbeitsverzeichnis auf. Wenn ein anderes Verzeichnis angegeben ist, dann ls Listet die Dateien dort auf, und tatsächlich kann der Benutzer jede Liste von Dateien und Verzeichnissen angeben, die aufgelistet werden sollen.

Dateiennamen beginnen mit "." sind nicht aufgeführt wenn nicht -a (Alle zeigen) ist angegeben, -EIN (Zeigen Sie alle außer "." und "..") wird angegeben, oder die Dateien werden explizit angegeben.

Ohne Optionen, ls Zeigt nur Dateinamen an. Die häufigsten Optionen zum Anzeigen zusätzlicher Informationen sind:

  • -l langes Format, Anzeige UNIX -Dateitypen, Berechtigungen, Anzahl von harte Links, Eigentümer, Gruppe, Größe, Last-modifiziertes Datum und Dateiname
  • -F Fügen Sie ein "/" -Namennamen und ein "*" an ausführbare Dateien hinzu.
  • -g Anzeigegruppe, aber nicht Eigentümer
  • Besitzer anzeigen, aber keine Gruppe (in Kombination mit mit -g Sowohl Gruppen als auch Eigentümer sind unterdrückt)
  • -d Zeigt Informationen zu einem symbolischen Link oder Verzeichnis an und nicht über das Ziel des Links oder listet den Inhalt eines Verzeichnisses auf.
  • -h Ausgangsgrößen im menschlichen lesbaren Format. (z. B. 1K, 234 m, 2G usw.) Diese Option ist nicht Teil des POSIX -Standards, obwohl sie in mehreren Systemen implementiert sind, z. B. GNU CoreUtils im Jahr 1997.[11] FreeBSD 4.5 im Jahr 2002,[12] und Solaris 9 im Jahr 2002.[13]

Weitere Optionen, die die angezeigten Dateien steuern, gehören:

  • -f nicht sortieren. Nützlich für Verzeichnisse mit einer großen Anzahl von Dateien.
  • -t Sortieren Sie die Liste der Dateien nach Änderungszeit. (Standard ist alphabetisch)
  • -1 (eine) Kraftleistung für einen Eintrag pro Linie.
  • -R Auflistung Dateien in Unterverzeichnissen und deren Unterverzeichnisse rekursiv auflisten…
  • -U Listet die letzte Zugriffszeit der Dateien anstelle ihrer letzten geänderten Zeit auf.
  • -c Listet die letzte Inode -Änderung von Dateien anstelle der letzten geänderten Zeit auf.
  • --Vollzeit Zeiten mit Sekunden und Millisekunden anstatt bis zur Minute zu zeigen.

Es ist häufig möglich, verschiedene Arten von Dateien mit unterschiedlichen Farben hervorzuheben, anstatt mit Zeichen als Zeichen -F möchten. Dies ist ein Bereich, in dem die beiden wichtigsten ls Versionen unterscheiden sich:

  • GNU ls verwendet die --Farbe Möglichkeit; Überprüft den UNIX -Dateityp, die Dateiberechtigungen und die Dateierweiterung und verwendet eine eigene Datenbank, um die mit Dircolors verwalteten Farben zu steuern.
  • Freebsd ls verwendet die -G Möglichkeit; Überprüft nur die UNIX -Dateityp- und Dateiberechtigungen. und verwendet die Termcap Datenbank[14]

Wenn die Option zur Verwendung von Farben zum Angeben von Dateitypen ausgewählt ist, sieht die Ausgabe möglicherweise aus:

-RW-R-R-- 1 Tsmitt Nregion 26650 Dez 20 11:16 Audio.ogg BRW-R-R-- 1 Tsmitt Nregion 64 Jan 27 05:52 BD-Block-Gerät CRW-R-R-- 1 Tsmitt Nregion 255 Jan 26 13:57 CD-Charakter-Gerät -RW-R-R-- 1 Tsmitt Nregion 290 Jan 26 14:08 Image.png DRWXRWXR-X 2 TSMITT NREGION 48 Jan 26 11:28 DI-Verzeichnis -rwxrwxr-x 1 tsmitt nregion 29 Jan 26 14:03 Ex-Execable -rw-r- r-- 1 tsmitt nregion 0 Dez 20 09:39 fi-reguläre Datei lrwxrwxrwx 1 tsmitt nregion 3 Jan 26 11:44 ln-soft-link -> Dir LRWXRWXRWX 1 TSMITT NREGION 15 Dez 20 10:57 Orphan-Link -> Mi-Missing-Link DRWXR-XRWX 2 TSMITT NREGION 4096 20. Dezember 10:58 OW-andere-schreibbares Zapfen PRW-R-R-- 1 Tsmitt Nregion 0 26. Januar 11:50 pi-pipe -rwxr-sr-x 1 tsmitt nregion 0 dez 20 11:05 sg-setgid srw-rw-rw- 1 tsmitt nregion 0 26. Januar 12:00 Uhr So sehr DRWXR-XR-T 2 TSMITT NREGION 4096 20. Dezember 10:58 St-Sticky-Dir -rwsr-xr-x 1 tsmitt nregion 0 Dez 20 11:09 su-setuid -RW-R-R-- 1 Tsmitt Nregion 10240 Dez 20 11:12 komprimiert.gz DRWXRWXRWT 2 TSMITT NREGION 4096 20. Dezember 11:10 Tw-Sticky-anderen-schwingbares-dir

Stichprobenverbrauch

Das folgende Beispiel zeigt die Ausgabe der ls Befehl bei zwei verschiedenen Argumenten:

$ ls -lDRWXR-R-- 1 FJONES EDITORTER 4096 ENTRAGEN -RW-R-R-- 1 FJones Editors 30405 Edition-32 -R-XR-XR-X 1 Fjones Buchhalter 8460 edit.sh $ ls -fEntwürfe/ Ausgabe-32 edit.sh* 

Im obigen Beispiel der Benutzer Fjones Hat ein Verzeichnis namens Entwürfe, eine reguläre Datei mit dem Namen Ausgabe-32und eine ausführbare Datei namens namens edit.sh in seinem Heimverzeichnis. ls Verwendet UNIX -Dateiberechtigungsnotation Definieren Sie den Zugriff für den Benutzer (d. H. Er selbst), Gruppenmitglieder für verschiedene Gruppen und andere Benutzer.

DRWXR-R-1 Fred Editors 4096 März 2007 Entwürfe 

In diesem Beispiel, Entwürfe ist ein Verzeichnis (mit dem Dateideskriptor bezeichnet d) und die Charaktere danach zeigen die Berechtigungen an:

  • rwx: der Eigentümer (Fjones) hat das Recht zu lesen (r), schreiben (w) und ausführen (x)
  • r--: Benutzer, die Mitglieder der sind Redakteure Gruppe haben schreibgeschützte Berechtigungen; Schreiben und Ausführen sind nicht erlaubt, wie durch die Hyphen -Charaktere bezeichnet (-)
  • r--: andere (Benutzer neben dem Eigentümer oder Mitgliedern von Redakteure) schreibgeschützte Berechtigungen; Schreiben und Ausführen sind nicht erlaubt

Siehe auch

Verweise

  1. ^ "EFI -Muscheln und Skripten". Intel. Abgerufen 2013-09-25.
  2. ^ "Listenordnerinhalt - Matlab LS".
  3. ^ "Funktionsreferenz: LS".
  4. ^ Multics Manual -Seite für den Befehl LS oder List
  5. ^ "Eine kurze Geschichte des Befehls 'LS'", Eric Fischer, das Linux -Dokumentationsprojekt
  6. ^ "Multics -Programmierhandbuch - Befehle und aktive Funktionen" (PDF). p. 397.
  7. ^ ls- Shell and Utilities Referenz, Die einzelne Unix -Spezifikation, Version 4 von Die offene Gruppe
  8. ^ MSX-DOS2-Tools-Benutzerhandbuch von ASCII Corporation
  9. ^ ls (1)- -Linux Allgemeine Befehle Handbuch; ls (1)- -Freebsd Allgemeine Befehle Handbuch
  10. ^ "Native Win32 -Ports einiger GNU -Dienstprogramme". Unxutils.SourceForge.net.
  11. ^ "(decode_switches): -h und -h überschreiben Ausgabeeinheiten". coreUtils.git. 1997-12-31.
  12. ^ "[Basis] log von /stable/10/bin/ls/ls.c". 2001-12-28.
  13. ^ Was ist neu in der Betriebsumgebung von Solaris 9, Sun Microsystems, 2002
  14. ^ "FreeBSD Man Pages - LS". Abgerufen 23. Juni, 2013.

Externe Links