Durchsuchen Sie die Ausgabe des Find-Befehls mit den Befehlen cd und ls

Durchsuchen Sie die Ausgabe des Find-Befehls mit den Befehlen cd und ls

Ich habe eine Datei, die die Ausgabe von find„aufgerufen“ in einem Verzeichnis auf einem anderen Computer enthält. Ich möchte die Datei-/Verzeichnisstruktur mit Befehlen wie „,“ usw. durchsuchen, cdals lsob sie sich in meinem Dateisystem befände. Wie kann ich das tun?

Beispiel meiner Find-Ausgabedatei

/a0/a1/
/a0/a1/a2
/a0/a1/a2b
/a0/a1/a2b/a2b1.txt
/a0/a1/a2b/a2b2.txt

In meinem Fall sind alle Pfade absolut. Ich habe ungefähr 755.000 Einträge in der vollständigen Datei.

Antwort1

Ich habe eine Lösung gefunden, um eine Dummy-Dateistruktur aller Dateipfade in meinem aktuellen Verzeichnis zu erstellen, die ich anschließend durchsuchen kann:

cat find.output | sed -r 's/^\/(.*)$/"\.\/\1"/' | xargs mkdir
  • find.outputist meine Datei
  • Ich sedmache absolute Pfade relativ und setze sie in Anführungszeichen (falls sie Leerzeichen enthalten).
  • xargswird verwendet, um für jeden Pfad ein Verzeichnis zu erstellen

Allerdings wäre ich über eine Lösung froh, die mein reales Dateisystem nicht berührt.

verwandte Informationen