In Unix-Dateisystemen sind Verzeichnisse nur spezielle Dateien mit speziellen Verzeichnisstrukturen, die den untergeordneten Dateinamen, die Dateinamengröße und die Inode-Referenznummer enthalten.
Die eigentlichen Datei-Metadaten darüber hinaus werden normalerweise im Inode selbst gespeichert.
Meine Frage ist. Wie liest man die eigentliche spezielle Verzeichnisstruktur in ihrer rohen Form statt in ihrer interpretierten Form.
Ja, ich weiß, dass Sie ls verwenden können, um die Dateien dort anzuzeigen. Das ist nicht das, wonach ich suche.
Akzeptierte Antwort:
Die einfache Antwort ist, dass Sie die Verzeichnisdatei
mit einem Befehl wie cat .
lesen möchten , cat /etc
, oder cat mydir
.
Da es sich um „Rohdaten“ handelt,
sollten Sie natürlich ein Programm verwenden, das besser geeignet ist,
Nicht-ASCII-Daten auf menschenfreundliche Weise anzuzeigen; B. hexdump
oder od
.
Leider, wie in Wann wurden Verzeichnisse nicht mehr als Dateien lesbar? beschrieben, erlauben die meisten Versionen von Unix
, die in den letzten zwei Jahrzehnten oder so veröffentlicht wurden, dies nicht.
Die Antwort auf Ihre Frage könnte also lauten:
„Suchen Sie eine Unix-Version, die noch das Lesen von Verzeichnissen erlaubt“.
AIX, die meisten Versionen von BSD,
und alle Solaris-Versionen außer den neuesten Versionen können sich qualifizieren.
Um ein Linux zu finden, das dies zulässt, kann die Verwendung einer Zeitmaschine erforderlich sein.