Требуется построчно вывести полные пути и имена файлов с сортировкой по времени изменения. Пример для директории /etc:
/etc/protocols
/etc/cron.daily/logrotate
/etc/inputrc
/etc/mail/access
/etc/rc.d/rc.sendmail
/etc/syslog.conf
...
Как известно, основные утилиты для листинга файлов в линуксе это ls и find. Но вот в чем проблема: ls не умеет рекурсивно выводить полные пути, а find не умеет сортировку ... :-(
Пока решил проблему с помощью команды:
find /etc -type f -printf "%T@ %p\n" | sort -n | cut -d " " -f 2
Т.е. сначала find выводит время изменения в unixtime, затем полный путь файла. Далее производится сортировка этого списка и при выводе первое поле с датой вырезается.
Так работает, но команда выглядит как-то некузяво. Может кто-то подскажет более очевидное решение?