Purpur
Anmeldungsdatum: 15. Mai 2005
Beiträge: 346
|
Hallo Gemeinde, ich möchte den gesamten Inhalt meiner Festplatte als Textdatei haben. Das geht z.B. mit:
Nicht so schön an der erzeugten Textdatei ist allerdings, dass:
die Dateigröße nicht schön formatiert ist, und die Dateien unterhalb der Directories nicht eingerückt sind.
Das erschwert die Lesbarkeit sehr. Gibt es hier eine bessere Methode? Herzlichen Dank schon mal für euren Einsatz, Purpur Moderiert von jug: Thema in einen passenderen Forenbereich verschoben. Bitte beachte die als wichtig markierten Themen („Welche Themen gehören hier her und welche nicht?“) in jedem Forenbereich. Danke.
|
verdooft
Anmeldungsdatum: 15. September 2012
Beiträge: 4020
|
Das könnte mit tree gehen:
tree - list contents of directories in a tree-like format.
|
XM-Franz
Supporter
Anmeldungsdatum: 15. Juni 2010
Beiträge: 3439
Wohnort: Moers
|
Dann lies mal ls bzw. ls --help bzw. man ls . Vorschlag:
|
Purpur
(Themenstarter)
Anmeldungsdatum: 15. Mai 2005
Beiträge: 346
|
Hallo verdooft, Hallo XM-Franz, die Änderung der Argumente für ls und die Verwendung von tree (nachinstalliert) beantworten meine Frage vollständig. Herzlichen Dank für eure Hilfe, Purpur
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 12832
|
Für so einen Anwendungsfall finde ich find mit "printf" viel angebrachter, weil es mehr Kontrolle über die Formatierung erlaubt als ls . ls ist eigentlich nur für den Menschen gedacht. Probier das mal aus: | find -printf '%010s %p\n'
# definierte Reihenfolge für leichtere Diffs:
find -printf '%010s %p\n' | sort -b -k 2
|
|
track
Anmeldungsdatum: 26. Juni 2008
Beiträge: 7174
Wohnort: Wolfen (S-A)
|
Ja, da hat Robert schon recht: es kommt sehr darauf an, was Du mit der gespeicherten Liste später vorhast. Alle Vorschläge oben taugen eigentlich nur zum angucken, und nicht zur Weiterverarbeitung der Liste. (das Problem sind Sonderzeichen und Zeilenvorschübe ! - die dürfen in Dateinamen vorkommen, und deshalb muss man sich überlegen, wie man damit umgeht !) LG, track
|
Purpur
(Themenstarter)
Anmeldungsdatum: 15. Mai 2005
Beiträge: 346
|
Hallo zusammen, naja - eigentlich ist das Problem ja keines. Ich suche oft nach Dateien. Natürlich gibt es die Suchfunktion. Die ist aber auch oft unpraktisch. Zum Einen rödelt dauernd die Platte, zum andern muss ich alle Verzeichnisse mit gleichem Namen einzeln anklichen und in einem neuen Tab öffnen, damit ich rein schauen kann. Da ist mir eine Liste im Textformat fast lieber. Allerdings hat sich gezeigt, dass die Listen, die nach den oben gemachten Vorschlägen erzeugt werden, ellenlang sind (teilweise über 100MB), weil sie auch alle Einträge aus .-Verzeichnissen enthalten. Wirklich glücklich bin ich damit nun auch nicht. Eine echte Heureka-Lösung habe ich noch nicht gefunden. Danke fürs Einmischen & Gruß, Purpur
|
track
Anmeldungsdatum: 26. Juni 2008
Beiträge: 7174
Wohnort: Wolfen (S-A)
|
Vielleicht solltest Du Dir mal den Befehl locate ansehen ? - der ist nämlich für sowas gemacht, und führt sowieso schon eine Datenbank über sämtliche Dateien ... 😉 LG, track
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 12832
|
track schrieb: Vielleicht solltest Du Dir mal den Befehl locate ansehen ? - der ist nämlich für sowas gemacht, und führt sowieso schon eine Datenbank über sämtliche Dateien ... 😉
Genau. Oder find mit passenden Suchkriterien nutzen - das ist etwas langsamer, dafür aktueller. Und wenn man öfters sucht, sind die Blöcke der Verzeichnisse sowieso im Cache und es geht selbst mit find ratzfatz. Kommt halt drauf an.
|
Purpur
(Themenstarter)
Anmeldungsdatum: 15. Mai 2005
Beiträge: 346
|
Hallo rklm & track, locate & find sind die Lösung. Wenn ich nun eine gut lesbare Darstellung finde, bin ich glücklich. Besten Dank an euch beide, Purpur
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 12832
|
Purpur schrieb:
Wenn ich nun eine gut lesbare Darstellung finde, bin ich glücklich.
Da müsstest Du mal definieren, was "gut lesbare Darstellung" bedeutet. locate zeigt nur den Namen, aber find kann man ja beliebige Informationen über die Dateien anzeigen lassen (schau mal auf die Manpage). Das kann man dann auch in einen Alias, eine Shell-Funktion oder ein Skript packen.
|
Purpur
(Themenstarter)
Anmeldungsdatum: 15. Mai 2005
Beiträge: 346
|
rklm schrieb: definieren, was "gut lesbare Darstellung" bedeutet.
Pfad und evtl. Dateigröße wären gut. Momentan beschäftige ich mich mit locate. Und prompt habe ich zwei Probleme:
| locate Kassettenlager > kala.txt
|
gibt nicht alle Verzeichnisse aus, in der die Datei "Kassettenlager 4x5 Inch v02.dxf" enthalten ist. Allerdings fäuft der Rechner schon seit Tagen und wird nur über Nacht in Bereitschaft versetzt. Deshalb vermute ich, dass die /var/lib/mlocate/mlocate.db nicht aktuell ist.
2. updatedb gibt einen Fehler aus:
| alex@shuttle:~$ updatedb
updatedb: kann temporäre Datei für `/var/lib/mlocate/mlocate.db' nicht öffnen
|
Wo steckt hier das Problem?
|
verdooft
Anmeldungsdatum: 15. September 2012
Beiträge: 4020
|
updatedb mit sudo ausführen.
|
rklm
Projektleitung
Anmeldungsdatum: 16. Oktober 2011
Beiträge: 12832
|
Purpur schrieb: rklm schrieb: definieren, was "gut lesbare Darstellung" bedeutet.
Pfad und evtl. Dateigröße wären gut.
Das liefern ja die beiden Befehlszeilen, die ich oben gezeigt habe.
Momentan beschäftige ich mich mit locate. Und prompt habe ich zwei Probleme:
| locate Kassettenlager > kala.txt
|
gibt nicht alle Verzeichnisse aus, in der die Datei "Kassettenlager 4x5 Inch v02.dxf" enthalten ist. Allerdings fäuft der Rechner schon seit Tagen und wird nur über Nacht in Bereitschaft versetzt. Deshalb vermute ich, dass die /var/lib/mlocate/mlocate.db nicht aktuell ist.
Das wird aber unter Ubuntu normalerweise regelmäßig aktualisiert - auch im laufenden Betrieb. Du kannst ja mal auf die Änderungszeit der DB schauen. Tippfehler sind auch oft die Ursache, warum man etwas nicht findet. 😉
|
Purpur
(Themenstarter)
Anmeldungsdatum: 15. Mai 2005
Beiträge: 346
|
verdooft schrieb: ... sudo ...
Yep - nun ist alles da.
Besten Dank.
|