Предполагая, что эти файлы являются изображениями, вы можете использовать такой инструмент, как exiftool
, чтобы переименовать их по дате их создания, а затем отсортировать по имени.
Если вы не можете переименовать их, просто скопируйте имена с датой создания в STDOUT и sort
, например ,::1007*
exiftool -p '$dateTimeOriginal $filename' -q -f DIRECTORY/WHERE/IMAGES/ARE | sort -n
Если вам нужны только имена файлов в выводе, добавьте | cut -f 2 -d " "
в конец.
Если это формат файла, который не распознается exiftool
, это может работать или не работать:
for f in YOURFILES* ; do
filedate=`grep --binary-file=text -i -o 'date_time: ...........:..' $f | head -1`
echo "$filedate $f"
done | sort -n
Примечание : это не будет работать, если в именах файлов есть пробелы (и я оставляю это вам решать). И если вы хотите вывести только отсортированные имена файлов, добавьте | awk '{print $NF}'
после sort -n
.