Программа структурирования файлов.

Обязательные аргументы

  1. путь_к_корневой_директории

Необязательные аргументы

Тип запуска (может быть выбран только один):

  1. -rm - рекурсивное извлечение файлов из всех подпапок
  2. -rmr - рекурсивное извлечение файлов из всех подпапок и переименование по шаблону: [год]_[№ месяца]_[№ файла]
  3. -f - распределяет файлы в корне указанной директории по подпапкам с именем [год]_[№ месяца]
  4. Без необязательных аргументов - переименовывает файлы в указанной директории по шаблону: [год]_[№ месяца]_[№ файла]

Исключения - необязательный аргумент, но если указан, то должен идти последним:

  1. -e <список имен файлов через запятую для исключения работы с ними>

Примечания

  • Год и номер месяца - берутся из даты съемки если это фото, иначе из даты изменения файла.
  • Особенности алгоритмов переименования если нашлись файлы с одинаковыми именами:
    • -rmr - если в корне существует файл с именем соответствующим шаблону [год]_[№ месяца]_[№ файла], то следующие номера файлов будут вычисляться с учетом этого файла
    • -rm - если в корне существует файл с именем перемещаемого файла, то к имени последнего добавится _№, где №-порядковый номер

Примеры запуска:

  • java -jar FilesStructured.jar "C:\Users\Dma\Desktop\2017" -f"
  • java -jar FilesStructured.jar "D:\Новая папка" -rmr"
  • java -jar FilesStructured.jar "D:\ФОТО\$$$ ОБЩАЯ ПАПКА $$$\2019" -rm"