
NAME

  dkt ls - Dateien anzeigen

AUFRUF

  dkt ls [<Optionen>] [<Dateien>]

BESCHREIBUNG

Das Programm zeigt Informationen über die angegebenen Dateien an.
Dabei kann festgelegt werden, welche Informationen in welcher Reihenfolge
ausgegeben werden.
Als Dateigröße für Verzeichnisse wird die Summe aus Verzeichnisgröße selbst
und Größe des gesamten Inhaltes ausgegeben.


OPTIONEN

-R
	ignoriert alle Einstellungen aus dkt.conf-Konfigurationsdateien.

-p <Reihenfolge>
	wählt aus, welche Informationen in welcher Reihenfolge angezeigt
	werden sollen. Siehe AUSGABEREIHENFOLGE weiter unten.

-r
	rekursives Listing (d.h. mit Unterverzeichnissen).

-d
	dereferenziert symbolische Links. Ohne diese Option werden nur
	Angaben über den Link selbst ausgegeben, mit dieser Option
	werden Angaben über die Zieldatei ausgegeben.
	Bei rekursiven Listings wird für Verzeichnis-Symlinks ohne "-d"
	nur eine Information über den Link ausgegeben, mit "-d" wird ggf.
	auch der Verzeichnisinhalt aufgelistet.

-l Tiefe
	Tiefe, bis zu der Verzeichnis-Symlinks gefolgt wird. Die Angabe
	ist eine Zahl oder "unlimited".

-f
	weist das Programm an, bei rekursiven Listings innerhalb des
	aktuellen Filesystems zu bleiben. Damit wird Verzeichnis-Symlinks
	nur gefolgt, wenn das Zielverzeichnis im aktuellen Filesystem liegt,
	Mountpoints für weitere Filesysteme wird nicht gefolgt.

-t <Typen>
	gibt Informationen nur für die angegebenen Dateitypen aus.
	Siehe DATEITYPEN weiter unten.

-m <Digest.Encoding>
	legt Message-Digest-Typ und Encoding für Prüfsummen fest.
	Folgende Message-Digest-Typen könen verwendet werden:
	MD5		RSA Data Security, Inc. MD5 Message Digest Algorithm
			(RFC 1321)
	SHA-1		SHA-Algorithmen
	SHA-224		(FIPS publications)
	SHA-256
	SHA-384
	SHA-512
	RIPEMD-160	Cryptographic hash function by Hans Dobbertin,
			Antoon Bosselaers and Bart Preneel.
	Folgende Encodings können für die Umwandlung des binären
	Message-Digests nach Text verwendet werden:
	HEX		Hexadezimale Darstellung
			(erzeugt 2 Text-Bytes pro Binärbyte)
	ASCII-85	ASCII-85-Codierung
			(erzeugt 5 Text-Bytes für je 4 Binärbytes)
	R-ASCII-85	Reverse ASCII-85-Codierung
			(erzeugt 5 Text-Bytes für je 4 Binärbytes)

-s
	gibt am Ende eine Zusammenfassung aus.

AUSGABEREIHENFOLGE

Der Text als Parameter zur Option "-p" legt fest, welche Informationen
in welcher Reihenfolge ausgegeben werden. Dafür können folgende
Kennbuchstaben verwendet werden:

n	Dateiname
s	Dateigröße
t	Dateityp
p	Zugriffsrechte
x	Prüfsumme
l	Anzahl der Links
c	Zeitpunkt Datei-Erzeugung
m	Zeitpunkt der letzten Änderung
a	Zeitpunkt des letzten Zugriffes
u	User-ID des Eigentümers
g	Group-ID der Eigentümer-Gruppe
d	Device-Nummer
r	Relative Device-Nummer
i	Inode-Nummer
f	File Identifier (Device and inode or volume serial number with
	index high and index low).
w	Reparse-Point-Tag (nur Windows).

DATEITYPEN

Bei der Auswahl bestimmter Dateitypen und bei der Anzeige des Dateityps
werden folgende Kennbuchstaben verwendet:

f	Reguläre Datei (in der Anzeige wird ein "-" verwendet)
d	Verzeichnis
l	Symbolischer Link (in der Anzeige wird ein "l" für Symlinks
	innerhalb des Filesystems verwendet, ein "L" für Symlinks
	in andere Filesysteme und ein "!" für Symlinks mit nicht
	existierender Zieldatei)
p	Pipe oder FIFO
c	Byte-Gerät
b	Block-Gerät
s	Socket
D	Door
e	Event Port
O	Xenix-Spezialdatei
N	Xenix-Semaphor
M	Xenix-Shared-Data
C	Gemultiplextes Byte-Gerät
B	Gemultiplextes Block-Gerät
v	VXFS-komprimierte Datei
n	Netzwerk-Spezial-Datei
w	Whiteout
a	ACL-Eintrag

Unter windows schließt sich an den Typ die Information zu einem evtl.
vorhandenem Reparse-Point an. Auch diese Information wird als ein Zeichen
dargestellt:

-	Kein Reparse-Point vorhanden.
m	Mount-Punkt.
l	Symbolischer Link.
r	Sonstiger Reparse-Point-Typ.

DATEINAMEN IN ANFÜHRUNGSZEICHEN UNTER WINDOWS

Unter Windows wird der Backslash für verschiedene Zwecke benutzt:
zum einen als Trennzeichen zwischen Pfad-Komponenten in Dateinamen, zum
anderen als Beginn von Backslash-Escape-Sequenzen in der Shell.
Werden in cmd.exe Kommando-Argumente in doppelte Anführungszeichen
eingeschlossen, wird nicht nur der eingeschlossene Text als ein String
behandelt, zusätzlich wird die Verarbeitung von Backslash-Escape-Sequenzen
aktiviert. Die nachfolgende kurze Tabelle zeigt Beispiele für eingegebenen
Text und die Argumente, die cmd.exe an externe Kommandos übergibt
(getestet unter Windows 7 Prof. am 23.07.2013):

Eingegebener Text		An externe Kommandos übergebenes Argument
	C:					C:
	"C:"					C:
	C:\					C:\
	"C:\"					C:"
	C:\\					C:\\
	"C:\\"					C:\

In Beispiel 4 wurde versucht, das Wurzelverzeichnis eines Laufwerkes in
Anführungszeichen zu setzen. Unglücklicherweise ergeben das Ende des
Dateinamens (der Backslash) und das eigentlich schließende Anführungszeichen
eine Backslash-Escape-Sequenz, die dazu führt, dass cmd.exe ein doppeltes
Anführungszeichen in dem Argument verwendet, das an das externe Programm
übergeben wird.
Die Eingabe von
  dkt ls "C:\"
bewirkt, dass cmd.exe als Dateinamen C:" an dkt ls übergibt. Richtig wäre an
dieser Stelle die Verwendung von
  dkt ls "C:\\"
Bei Verwendung von Anführungszeichen um Dateinamen muss also darauf geachtet
werden, nicht versehentlich Escape-Sequenzen zu verwenden, die anders
interpretiert werden als vorgesehen.

RÜCKGABEWERT

Das Programm gibt bei Erfolg 0 zurück, alle anderen (positiven) Exit-Codes
weisen auf Fehler hin.

AUTOR

Dirk Krause

GESCHICHTE

Die Funktion "dkt ls" ersetzt das Programm kls aus früheren dktools-Versionen.

