Redditor написал мне отличный сценарий, который позволил мне переместить все файлы в серии папок в новый подкаталог во всех этих папках под названием New. Однако у меня также есть уже существующие папки (а именно 1, называемые «Журналами»), файлы которых также были перемещены в подкаталог с именем «Новый».
Как мне изменить следующий скрипт (на Windows) чтобы не трогать какие-либо папки внутри папок или, возможно, не трогать ни одну из папок, называемых журналами?
Например, текущий каталог выглядит следующим образом:
Parent/Folder name/tons of files/
Parent/Folder name/Journals/tons of files
(имя папки = случайная строка alphanumeri c чисел в тысячах). В каждой папке есть тонна файлов и папка под названием Журналы.
Мне бы хотелось:
Parent/randomstring folder/New/tons of files/
Parent/randomstring folder/Journals/tons of files
Код, который они написали для меня:
# Run from search root
cd "O:\..."
# Change this to taste
export NEWDIR=New
find . | egrep '(mp4$|jpg$|png$)' |
while read FILE
do
BASEDIR=$(dirname "$FILE")
mkdir "$BASEDIR/$NEWDIR" > /dev/null 2>&1
mv "$FILE" "$BASEDIR/$NEWDIR"
done
Это код будет делать следующее:
Parent/randomstring folder/New/tons of files/
Parent/randomstring folder/Journals/new/tons of files