Verwenden Sie find
ist -printf
und nach einem vernünftigen Datumsformat sortieren:
find -type f -printf '%T+\t%p\n' | sort -n
Dies sollte Prozessverzweigungen minimieren und somit am schnellsten sein.
Beispiele, wenn Ihnen der Sekundenbruchteil nicht gefällt (der oft sowieso nicht im Dateisystem implementiert ist):
find -type f -printf '%T+\t%p\n' | sed 's/\.[[:digit:]]\{10\}//' | sort -n
find -type f -printf '%T+\t%p\n' | cut --complement -c 20-30 | sort -n
BEARBEITEN: Standard find
auf dem Mac hat nicht -printf
. Aber es ist nicht schwierig, GNU find auf einem Mac zu installieren (siehe auch diesen Link für weitere Vorbehalte bezüglich Mac/Linux-Kompatibilität und xargs
).
Hier ist eine Methode mit stat
wie @johnshen64 vorgeschlagen
find . -type f -exec stat -f "%m%t%Sm %N" '{}' \; | sort -rn | head -20 | cut -f2-