обзор
Раздел 1 - Переименование файлов с помощью утилиты Bulk Rename.
Раздел 2 - Предложения по группировке файлов для упрощения обработки.
Раздел 3 - Поиск файлов с пробелами в их именах непосредственно перед расширением.
Раздел 4 - Экспорт списка этих файлов в виде текстового файла.
Использование утилиты Bulk Rename
Насколько я понимаю, у вас были небольшие проблемы с Bulk Rename Utility .
Предполагая, что ваше описание является точным (и есть только один или несколько пробелов в качестве последних символов перед расширением, например, «ba room 56 .xxx»), вы можете просто использовать Trim
функцию Remove (5)
без изменения каких-либо опций:
ех. Предварительный просмотр результатов
Чтобы было ясно:
Выберите все элементы на основной панели с помощью Действия → Выбрать все ( Ctrl+ A).
Установите
Trim
флажок вRemove (5)
.
Вы заметите, что только имена, которые будут изменены, будут отображаться зеленым цветом. Аналогично, это будет переименовывать только файлы, а не папки. Когда все будет выполнено, нажмите кнопку « Переименовать» в правом нижнем углу.
При желании вы можете сбросить все окно критериев переименования (если вы дурачились с другими опциями или просто чувствовали себя осторожно) с помощью Действия → Сбросить все критерии переименования ( Ctrl+ T).
Включая подкаталоги
Утилита Bulk Rename обычно одновременно работает только с одной корневой папкой. Тем не менее, можно включить подкаталоги:
ех. Замены в подкаталогах
Вы можете включить эти папки, используя Filters (12)
раздел главного окна. Просто отметьте Subfolders
:
ех. Параметры фильтра
Я также снял флажок, Folders
чтобы уменьшить визуальный беспорядок в окне предварительного просмотра (наше использование Trim
, как уже отмечалось, никак не влияет на папки). После того, как вы выбрали соответствующие опции фильтра, используйте Select All, Trim
и переименовать, как описано выше.
Группировка файлов с пробелами
В вашем случае, Bulk Rename Utility имеет возможность идентифицировать правильные имена файлов, которые будут изменены без дополнительных действий (просто укажите на соответствующий каталог, содержащий эти файлы). Файлы, которые не соответствуют вашим критериям, автоматически игнорируются.
Однако, как вы указали, существует большое количество файлов, и Утилита Bulk Rename может столкнуться с трудностями при обработке всех их сразу. В качестве предложения, я мог бы рассмотреть возможность группировки файлов во временные каталоги по 50-100 файлов в каждом.
Хотя я предлагаю пакетный файл, чтобы помочь вам ниже, он не группирует файлы по определенному номеру. Вам все равно придется создавать новые каталоги и делать эту часть вручную, если вы того пожелаете. Точно так же он требует, чтобы вы перемещали и запускали его по одной папке за раз.
Пакетная сортировка файлов
Чтобы облегчить задачу обработки такого большого количества файлов, вы можете отсортировать файлы с пробелами непосредственно перед расширением с помощью пакетного файла:
Откройте новый документ в блокноте Windows и скопируйте следующие строки:
if not exist %~dp0tempspace md %~dp0tempspace move /-y %~dp0"* .*" %~dp0tempspace pause
Выберите Сохранить как и под
Save as type
, выберитеAll Files (*.*)
.Измените расширение документа на
.bat
(пакетный файл Windows), набрав, например, findspaces.bat .Нажмите Сохранить .
Если все сделано правильно, имя файла должно измениться, чтобы включить .bat
расширение, а значок нового файла должен измениться на поле с шестернями в проводнике (а не на листе бумаги).
Поместите этот пакетный файл в любую папку, в которой, по вашему мнению, могут быть файлы с пробелами непосредственно перед расширением, и дважды щелкните его, чтобы запустить. Любые подходящие файлы будут перемещены в новую папку, которая называется, например, tempspace . Повторите при необходимости для дополнительных папок и подкаталогов, перемещая пакетный файл каждый раз.
Пакетный файл Примечания
Этот пакетный файл не выполняет поиск в подкаталогах (как указано выше).
Он перемещает все соответствующие файлы в данный временный каталог (а не только в некоторые).
Вы можете заменить, например, tempspace на любое имя папки, которое вам нравится, но я бы избегал пробелов. Также обратите внимание на отсутствие места между
%~dp0
именем папки.Вместо всех файлов с пробелами непосредственно перед именем (
"* .*"
), вы можете использовать определенное расширение, если хотите (например"* .xxx"
). Опять же, помните об отсутствии пробела между%~dp0
и критериями поиска, а также о промежутке между первой звездочкой и точкой.Хотя это не относится к сохранению новых файлов, вам, возможно, придется отобразить расширения в Windows, чтобы изменить существующие текстовые файлы на
.bat
расширения.
Поиск файлов
Поскольку может быть полезно (но не обязательно) заранее знать, какие файлы содержат пробелы непосредственно перед расширением, вот мои мысли по этой теме ...
Существует большое количество утилит, которые могут вам помочь. Тем не менее, что касается нативных решений Windows, есть утилита поиска командной строки, но я не верю, что она обладает необходимыми возможностями. Точно так же я никогда не был поклонником Windows Search, и я бы сомневался в его полезности в вашей ситуации.
В качестве простой альтернативы я бы порекомендовал агента Ransack от Mythicsoft . Это бесплатная программа поиска файлов, которую вы можете скачать здесь . Обратите внимание, что в настоящее время вам не нужно беспокоиться о «регистрации» программы в качестве домашнего пользователя (она будет работать независимо).
После установки откройте Agent Ransack и введите в главном окне поиска следующее:
Тип
* .*
вFile name
поле для поиска всех файлов с одним или несколькими ведущими пробелами перед расширением. Как и в приведенном выше пакетном файле, запомните пробел между первой звездочкой и точкой. Вы, конечно, можете указать расширение снова, например* .xxx*
.Убедитесь, что в
Look in
поле отображается правильная корневая папка (например, папка с вашими игровыми файлами) .Если вы хотите сделать всесторонний поиск, вы должны проверить
Search subfolders
.
Нажмите Start
кнопку справа, чтобы начать поиск файлов. По завершении поиска вы должны увидеть результаты, подобные следующим:
ех. результаты поиска
В то время как мой пример изображения показывает только один каталог, ваши реальные результаты будут показывать полные пути, включая подкаталоги (если вы отметили Search subfolders
).
Экспорт списка файлов
Чтобы получить список результатов поиска Agent Ransack в виде текстового файла, вы можете экспортировать их, выбрав Файл → Экспортировать результаты ... или использовать Export results
значок на панели инструментов Agent Ransack:
ех. Результаты экспорта
В окне « Экспорт» обязательно сохраните результаты в виде текстового файла:
Выбор
File
.Установка пути экспорта с соответствующим именем файла.
Выбор «Текстовый файл» для
Format
.Удостоверение
Save results for: All files
отмечено.
Нажмите кнопку « Экспорт» в правом нижнем углу после завершения.
ех. Окно экспорта
Очистка вещей с помощью Блокнота ++
К сожалению, кроме полного пути и имени файла, экспортируемый список содержит информацию, которая вам, вероятно, не нужна, например:
C:\path\to\gamefiles\ba room 56 .xxx 1 KB XXX File 2/11/2018 11:56:11 PM [...]
Чтобы сохранить информацию о пути / файле и отбросить остальные, мы можем использовать бесплатный текстовый редактор Notepad ++ (не путать с обычным блокнотом Windows). Просто выберите 32-разрядный или 64-разрядный установщик на странице загрузки.
После установки откройте, например, файл SearchResults.txt в Notepad ++. В меню выберите « Поиск» → «Заменить» ( Ctrl+ H), чтобы открыть диалоговое окно « Заменить ».
Затем вы можете использовать регулярное выражение (специальный шаблон поиска), чтобы выделить информацию, которая вам не нужна. Введите в Find what :
поле следующее:
\s\d+\s[A-Z].+$
Оставьте Replace with :
поле пустым. Убедитесь в том, что Match case
, Wrap around
и Regular expression
опции все отмеченные. . matches newline
Вариант должен быть снят:
ех. Блокнот ++ Заменить Диалог
Когда вы будете готовы, нажмите « Заменить все» справа. Затем вы можете сохранить отредактированный файл, предполагая, что все выглядит правильно.
Примечания по редактированию списка
Помните, что регулярное выражение, которое я предлагаю для удаления данных, может немного измениться, но оно должно работать правильно для текста, сгенерированного Agent Ransack. Дайте мне знать, если у вас возникнут какие-либо проблемы.
Этот отредактированный список может быть входом для некоторого другого сценария. Если вы хотите использовать его таким образом, возможно, будет лучше удалить все пустые строки. Вы можете сделать это вручную или Notepad ++ может сделать это для вас с помощью Правка → Операции со строками → Удалить пустые строки .
Удаление пустых строк также позволяет избежать проблем с заключением в кавычки (обычно невидимыми) строк, состоящих исключительно из пробелов (при условии, что вы хотите использовать регулярное выражение для цитирования строк ниже).
В большинстве случаев указывать пути в этом списке не обязательно (даже если пути в списке содержат пробелы). Но если вы по какой-то причине обнаружите, что вам нужен каждый путь в списке, указанном в кавычках, вы также можете использовать Notepad ++. Просто снова откройте диалоговое окно « Заменить регулярными выражениями» (с такими же настройками, как указано выше), но используйте
(.+)
вFind what :
поле и"\1"
вReplace with :
поле: