2

У меня есть папка и подпапки и огромное количество файлов следующим образом:

Folder  called Movies
Sub Folder called "009 - A bad Wolf"
Files called  " 009  A bad Wolf.avi"
Files  called  " 009  A bad Wolf.txt"
Files  called  " 009 - A bad Wold.nfo"
Sub folder   A damn Good Film
Files          >  A Very good Film .mp4
Files          >  A very good Film .nfo
Files          > A Very good Film.txt
Files          > American Babe -Estelle Feat Kan Wass.mkv
Files          > American Babe -Estelle Feat Kan Wass.nfo
Files          > American Babe -Estelle Feat Kan Wass-poster.jpg
Files          > American.History.X.1998.Bluray.1080p.DTS-HD-7.1.x264-Grym
Sub Folder     > Baste - taste
.
.
Files          > Baa Baa Sheep.ogg
Files          > Baa Baa Sheep.nfo
Files          > Baa Baa Sheep.txt
.
.
Files          > Saa Baa Sheep.mp3
Files          > Saa Baa Sheep.nfo
.
Files          > Zaa Baa Sheep.flv
Files          > Zaa Baa Sheep-poster.jpg
Files          > Zaa Baa Sheep.nfo
Files          > Zaa Baa Sheep.txt

Как я могу получить каждый подобный набор файлов в отдельных каталогах, не проходя один за другим? В подпапке 1075 файлов и вложенных папок, в основной папке 6 файлов + подпапка, в которой я полностью не разбираюсь. Я знаю, что должен использовать find и exec, но как создать каталог с соответствующими именами? т.е. должно быть так:

Folder > Movies
Sub Folder > 009 - A bad Wolf with the following files in this sub folder:        
        Files          >  009 - A bad Wolf.avi
        Files          >  009 - A bad Wolf.txt
        Files          >  009 - A bad Wold.nfo
 Sub folder     >  A damn Good Film with all the files of same name in this sub folder
 Sub Folder     > A Very good Film with all these files in this sub folder :            Files          >  A Very good Film .mp4
         Files          >  A very good Film .nfo
         Files          > A Very good Film.txt
Sub Folder     > American Babe -Estelle Feat Kan Wass with all these files of same name in this sub folder:
         Files          > American Babe -Estelle Feat Kan Wass.mkv
         Files          > American Babe -Estelle Feat Kan Wass.nfo
         Files          > American Babe -Estelle Feat Kan Wass-poster.jpg
Sub Folder     > American.History.X.1998.Bluray.1080p.DTS-HD with files of same name in this  sub folder:
          Files         > American.History.X.1998.Bluray.1080p.DTS-HD-7.1.x264-Grym
Sub Folder     > Baste - taste as above with files of same names in this sub folder
.
.
Sub Folder     > Baa Baa Sheep with files of same name in this sub folder:
       Files          > Baa Baa Sheep.ogg
       Files          > Baa Baa Sheep.nfo
       Files          > Baa Baa Sheep.txt
.
Sub Folder     > Saa Baa Sheep with files of same name in this sub folder:
       Files          > Saa Baa Sheep.mp3
       Files          > Saa Baa Sheep.nfo
.
Sub Folder     > Zaa Baa Sheep with files of same name in this sub folder:
       Files          > Zaa Baa Sheep.flv
       Files          > Zaa Baa Sheep-poster.jpg
       Files          > Zaa Baa Sheep.nfo
       Files          > Zaa Baa Sheep.txt

1 ответ1

1

Это довольно легко выполнить эту задачу, и я использую этот метод все время.

Перейдите к соответствующему каталогу. Нажмите SHIFT + щелчок правой кнопкой мыши (в пустом разделе папки). Выберите "Открыть окно команд прямо здесь". Сеанс терминала откроется в этом каталоге.

Пока вы находитесь в этом каталоге, вы можете создать нужные вам подпапки, используя Windows, новую папку и т.д. Или вы можете использовать команды:

Сделать каталог (сделать папку)
> Mkdir Foldername
Переместить все расширения файлов в новую подпапку (например, все файлы FLV)
> mv * .flv ./foldername

Если вы хотите переместить файлы с похожими заголовками, используйте команду следующим образом:* (звездочка) - это дикий символ. Кавычки держат строку в такте, удерживая пробелы; в противном случае пропуски пропускаются.

> мкдир "баа чёрная овца"
> Мв "Баа Блэк" *.* ./"baa черная овца "

Выше:
мв = двигаться
"baa black" * = начинается с "baa black" + * (любая строка после)
./ = этот каталог
./foldername = папка в этом каталоге с именем foldername

mv "baa black" *.* ./"baa black sheep "= переместить все файлы, которые начинаются со строки" ball black ", и переместить ее в каталог" baa black sheep "


Изображения выше должны помочь вам понять эту концепцию, если вы впервые работаете с интерфейсом командной строки.


К вашему сведению: это хорошая идея, чтобы ваши имена файлов были короткими и без пробелов, а также каталогов. Я бы порекомендовал также изучить "Команды Windows DOS", чтобы узнать некоторые приемы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .