Сортировка файлов по подпапкам в командной строке Mac

Сортировка файлов по подпапкам в командной строке Mac

Я хочу запустить команду для очень большой папки, чтобы отсортировать каждый элемент по подпапкам на основе даты изменения. Можно ли это сделать одной строкой?

Т.е. все файлы, измененные в июле 2013 года, будут перемещены в 2013-07etc.

Что-то с find.... проанализируйте год/месяц, затем переместите в соответствующую папку.

Страница manдля Mac findнаходится здесь:https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/find.1.html

решение1

Я нашел ответ.здесь... и модифицировал его под свои нужды:

for f in 12*; do   
     dir='/foo/bar/'$(stat -f%Sm -t%Y-%m "$f")
     [ -d "$dir" ] || mkdir "$dir"
     mv -nv "$f" "$dir"/
done

Вы можете заменить min -f%Smлюбым из следующих:

а, м, в, Б

  • Время файла было последнимадоступ илимodified, когда последний раз был inodeсповешенный, илиБi-е время инода.

Связанный контент