Вот решение на основе цикла с ограниченным набором команд, доступным в стандартном QNAP:
#!/bin/bash
for file in ????-??-??_*.{nef,xmp}
do
yyyymm=${file/-??_*}
echo mkdir -p "$yyyymm"
echo mv -f "$file" "$yyyymm/"
done
Поместите это в файл, например /root/fixup
, перейдите в каталог, содержащий ваши многочисленные файлы, и запустите bash /root/fixup
. Он создаст каталоги yyyy-mm
по запросу на основе имен файлов, которые он обрабатывает.
Как написано, изменений не будет. Когда вы будете довольны тем, что похоже, что это сработает, удалите слово echo
из двух строк в конце скрипта.
.rolling
был добавлен к номеру выпуска OpenJDK в Fedora, RHEL и их потомках, чтобы избежать конфликтов файлов с версиями пакетов OpenJDK(java-11-openjdk
и т. д. ). Пакет latest
иногда совпадает с версией пакета OpenJDK, и когда это происходит, оба пакета отправляют файлы в одни и те же места; добавление .rolling
в выпуск пакета latest
позволяет избежать этого.
Подробнее см.#1647298 .
Одно из возможных значений слова «катиться» здесь состоит в том, что это постоянно -обновляемый пакет, основные версии которого могут меняться в рамках выпуска дистрибутива.
ничего или ничего .
Этот пакет имеет номер версии 13.0.1.9-2.rolling.el7
, но с тем же успехом это могло быть 13.0.1.9-2.rolling-stones.el7
или что-то в этом роде. Для rpm
это просто текст .