2013-06-24 2 views
1

У меня есть вопрос о команде терминала. На работе мы получаем в папке много файлов каждый день. Сегодня мы решили организовать это полное количество файлов, собирая их в папках, используя год и месяц, как правило.Скопируйте/переместите все файлы последнее изменение даты за этот месяц

Вопрос: как я могу перенести все файлы, последние измененные даты которых находятся в диапазоне от апреля 2013 года, например.

+2

Ваш босс мог бы также нанять программиста для этого! –

+0

Что вы пробовали? Если у вас есть доступ, к чему у вас есть доступ? Просто баш? Рубин? Нам нужно немного больше, прежде чем мы сможем помочь. – miah

+0

Я пытаюсь с командой bash, но не работает. –

ответ

3

Вы можете легко выбрать файлы, время модификации которых находится в диапазоне времени с помощью команды find. Вот пример с Gnu находкой, что делает это довольно просто:

find . -newermt 'Apr 1, 2013 00:00' -not -newermt 'May 1, 2013 00:00' \ 
     -exec mv -t /path/to/April_2013/directory '{}' '+' 

man find для всех окровавленных деталей.