Файли командного рядка Mac сортують файли в підпапки


1

Я хочу запустити команду в дуже великій папці, щоб сортувати кожен елемент у папках на основі дати модифікації. Чи можна це зробити одним рядком?

Тобто всі файли, модифіковані в липні 2013 року, будуть переміщені до 2013-07тощо

Щось із find.... проаналізуйте рік / місяць, а потім перейдіть до відповідної папки.

manСторінка для Мака findтут: https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/find.1.html

Відповіді:


0

Я знайшов відповідь тут ... і змінити його для моїх потреб:

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

Ви можете замінити mін -f%Smз будь-яким з наступних дій :

a, m, c, B

  • Файл час останнього ccessed або м odified, про те, коли останній инод був з повішеним, або B раз Irth з инода.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.