Есть каталог с более чем 8000 файлов. Для ускорения работы с ним, нужно разбить находящиеся в нём файлы на группы по какому-либо признаку. 1) вариант создать 8 подкаталогов, и переместить в каждый по 1000 файлов. 2) Поскольку файлы добавлялись годами, создать папки с номерами годов, и в каждый поместить созданные в нём файлы.
Вопрос, как такое лучше всего сделать?
Приходит на ум find, но только для варианта 2).
find . -mindepth 1 -newermt '2011-01-01 00:00' ! -newermt
'2012-01-01 00:00' -ls
Вот только выдача по -ls кривая. Вместо русских имён файлов юникоды: /\320\243\320\261\320\270\321\202\321\214\
Выдача просто по ls корректная.
почему вывод ls через find кривой и как это исправить? man пишет, что русские буквы ему UNUSUAL FILENAMES, поэтому по дефолту выводит так. Как отучить его от этого, пока не дочитал.