0 / 0 / 0
Регистрация: 07.04.2019
Сообщений: 6
|
|
1 | |
Перемещение папки в папку, названную частью имени этой папки07.04.2019, 23:29. Показов 2665. Ответов 8
Доброго времени суток, уважаемые форумчане!
Перерыл кучу похожих тем, но конкретно своего случая не нашел, поэтому решил написать сюда. Имеется несколько тысяч папок с музыкой, названных в виде: Artist—Album, например Nirvana—1991 Nevermind. Требуется написать батник, который бы создавал папку, названную по типу Artist, а затем перемещал туда исходную папку с музыкой, но уже с названием в виде Album. То есть на выходе должно получиться так: папка Nirvana, внутри которой папка 1991 Nevermind. Как видно, из общего у всех папок только знак тире. Если одним батником невозможно, можно несколькими. В программировании я, к сожалению, почти полный нуб, а вручную всё сортировать - с ума сойдешь... Буду очень благодарен за содействие!
0
|
07.04.2019, 23:29 | |
Ответы с готовыми решениями:
8
Копирование файлов из определённой папки в папку, названную по номерам года и недели с начала года Создание папки по имени файла и перемещение файла в эту папку Найти по имени папки расположение этой папки в сети Переименовать папку в имя, являющееся частью имени одного из файлов, находящихся в этой папке |
6325 / 2752 / 1070
Регистрация: 06.06.2017
Сообщений: 9,350
|
|
08.04.2019, 03:51 | 3 |
Для батника можно взять Tag (в скрепке) и id3.
Если скрипты/сценарии не горят, то есть всякие GUI: Tiger Files Renamer Tags 2 Folders Tag&Rename TagScanner Mp3tag DropIt IDTE
1
|
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
||||||
08.04.2019, 15:02 | 4 | |||||
Сообщение было отмечено Jazz_man как решение
Решение
Если все эти тысячи папок лежат в одном каталоге (например D:\Music), тогда вот пример реализации на Powershell (3.0 и выше):
Если на экране будет, то что ожидалось, тогда убрать из скрипта все ключи -WhatIf (2 штуки) и символ # из 19-ой строки, после чего снова нажать Ctrl+A, а затем F8
1
|
0 / 0 / 0
Регистрация: 07.04.2019
Сообщений: 6
|
|
08.04.2019, 21:06 [ТС] | 5 |
И в первом и во втором случае выдает такое:
Get-ChildItem : Не удается найти параметр, соответствующий имени параметра "Directory". строка:5 знак:46 + Get-ChildItem -LiteralPath $folder -Directory <<<< -Filter '*—*' | ForEach { + CategoryInfo : InvalidArgument: ( [Get-ChildItem], ParameterBindingException + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand
0
|
6325 / 2752 / 1070
Регистрация: 06.06.2017
Сообщений: 9,350
|
||||||
08.04.2019, 22:06 | 6 | |||||
Сообщение было отмечено Jazz_man как решение
Решение
Jazz_man, до меня только дошло, что вам теги тащить из *.mp3 не нужно.
Батник:
1
|
0 / 0 / 0
Регистрация: 07.04.2019
Сообщений: 6
|
|
08.04.2019, 22:47 [ТС] | 7 |
Спасибо огромное! Всё работает!
0
|
1886 / 1108 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
||||||
09.04.2019, 01:05 | 8 | |||||
У вас PowerShell 2.0, а этот скрипт, как я писал, для 3.0 и выше. Версия проверяется так:
0
|
0 / 0 / 0
Регистрация: 07.04.2019
Сообщений: 6
|
|
09.04.2019, 14:16 [ТС] | 9 |
Для тестирования скриптов создавал отдельную папку, в которую была скопирована часть файлов из исходной, так что всё в порядке В любом случае, спасибо за еще одно рабочее решение!
0
|
09.04.2019, 14:16 | |
09.04.2019, 14:16 | |
Помогаю со студенческими работами здесь
9
Перемещение файлов из папки в папку Переименовать папку в имя файла внутри этой папки Как найти путь до папки и удалить папку внутри найденной папки При нажатии на кнопку,должны выводиться только папки этой папки и их содержимое Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |