Nachdem ich im Laufe der Jahre mit mehreren SQL- und NoSQL-Datenbanken gespielt habe, ist es für mich die beste Möglichkeit, die Portabilität meiner datenzentrierten persönlichen Apps sicherzustellen, alle bonafide-Datenbanken vollständig zu vermeiden. Ich sehe das Dateisystem als ein schönes Datenbankparadigma, das portabel und für den Menschen lesbar ist und daher eine Langlebigkeit aufweist, die für die Art der persönlichen Anwendungen, die ich schreibe, ausreicht. Es ist wie eine Diagrammdatenbank, die eine Baumstruktur erzwingt (gut für die Partitionierung), mit Symlinks, um viele-zu-eins-Beziehungen darzustellen.
Gibt es eine Möglichkeit, die gesamte Dateisystemtopologie als einzelne Datei zu exportieren? Die Ausgabe eines find
Befehls ist vielversprechend, aber es gibt keine standardisierte Möglichkeit, die Daten zu exportieren, die angeben, auf was ein Symlink verweist. Ich möchte nicht meine persönliche Wahl des find
Ausgabeformats treffen, wie zum Beispiel:
/home/me/photos/beach/me_and_my_dog.jpg -> /home/me/photos/beach/1.jpg
wenn jemand zuvor die Arbeit zum Einrichten eines Exportformats für die Dateisystemtopologie ausgeführt hat.
Ein weiterer Kandidat ist eine JSON-Datei:
home : [{
me : [{
photos : [{
beach : [{
1.jpg,
{ me_and_my_dog.jpg : ./1.jpg }
}]
}]
}
}]
Aber es gibt auch hier mehrere Möglichkeiten, Dateitypen darzustellen, und ich frage mich, ob jemand die Arbeit zur Festlegung eines Standards bereits erledigt hat.
Beachten Sie, dass ich den Inhalt von Dateien nicht exportieren möchte - dies würde den Export viel größer als nötig machen.
quelle
tree
Befehl (der großartig ist), aber ich wusste nicht, dass er jetzt syntaktisch analysierbare Formate unterstützt.tree
Befehl ist die Linux-Version. Die Windows-Version gibt nur noch den einfachen "Baum" aus.Sie können dafür verwenden
mtree
. Siehe www.freebsd.org/cgi/man.cgi?query=mtree&sektion=8&manpath=FreeBSD+6.3-RELEASE und code.google.com/p/mtree-portEs ist sehr vielseitig.
quelle