Manchmal will man Verzeichnisse und Dateien vergleichen. Wie kann auf einem Raspberry Pi eine sortierte Komma separierte Liste (CSV, Excel) aller Dateien und Verzeichnisse erstellt werden?
![](http://blog.wenzlaff.de/wp-content/uploads/2019/03/Linux.jpg)
Das geht auf der Komandozeile mit find, stat, format und sort:
1 |
find . -exec stat --format='%n,%a,%U,%G,' {} \; | sort > dateiliste.csv |
Wir suchen also mit find in dem Wurzelverzeichnis (.) und führen für jede Datei und jedes Verzeichnis ein Systemstatus abfrage mit stat aus. Dann geben wir die Parameter formartiert mit , aus n=Dateiname, a=Rechte, U=User, G=Gruppe. Das alles wird dann sortiert in die dateiliste.csv geschrieben.
Wir erhalten dann z.B. eine solche Liste:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
./src/CMakeFiles/rtl_test.dir/C.includecache,644,root,root, ./src/CMakeFiles/rtl_test.dir/cmake_clean.cmake,644,root,root, ./src/CMakeFiles/rtl_test.dir/DependInfo.cmake,644,root,root, ./src/CMakeFiles/rtl_test.dir/depend.internal,644,root,root, ./src/CMakeFiles/rtl_test.dir/depend.make,644,root,root, ./src/CMakeFiles/rtl_test.dir/flags.make,644,root,root, ./src/CMakeFiles/rtl_test.dir/link.txt,644,root,root, ./src/CMakeFiles/rtl_test.dir/progress.make,644,root,root, ./src/CMakeFiles/rtl_test.dir/rtl_test.c.o,644,root,root, ./src/cmake_install.cmake,644,root,root, ./src/libconvenience_static.a,644,root,root, ./src/librtlsdr.a,644,root,root, ./src/librtlsdr.so.0.6git,755,root,root, ./src/librtlsdr.so.0,777,root,root, ./src/librtlsdr.so,777,root,root, ./src/Makefile,644,root,root, |