Wenn find
Verzeichnisse durchläuft, werden sie in the order the VFS yields them angezeigt. Kann diese Reihenfolge in erste Verzeichnisse geändert werden, bevor Sie Dateien neben ihnen ansehen?directory-first-search mit find
Die Option -depth
ist nicht die Lösung. Es ändert sich nur
$ find
.
./afile
./directory
./directory/athirdfile
./other-directory
zu
$ find -depth
./afile
./directory/athirdfile
./directory
./other-directory
(Beachten Sie, wie nur die zweite und dritte Ausgangsleitung Plätze getauscht.)
Diese Frage stattdessen für eine Art und Weise versucht, die Reihenfolge zu erzeugen.
./directory/athirdfile
./directory
./other-directory
./afile
Ein vielversprechender Ansatz, aber es funktioniert noch nicht rekursiv. Unterverzeichnisse sollten auch vor Dateien angezeigt werden, die sich neben ihnen befinden. Die beiden 'find's zusammen über' -exec' zu verketten, könnte jedoch funktionieren. – XZS
Auf meinem Gnu find Unterverzeichnisse erscheinen vor den Dateien des Startverzeichnisses – anubhava
Auf meinem System, das ist ein GNU finden über eine tmpfs auf Kernel 4.6.4, 'mkdir -pa/b/c',' touch a/d' gefolgt von '{finden. -depth -mindepth 1; finden . -maxdepth 1 -dept -type f; } | tr '\ n', 'Ausgaben' ./a/d,./a/b/c,,/a/b,./a, '. Die Datei "a/d" erscheint vor dem Geschwisterverzeichnis "a/b". – XZS