обзор
Раздел 1 - Переименование файлов с помощью утилиты Bulk Rename.
Раздел 2 - Предложения по группировке файлов для упрощения обработки.
Раздел 3 - Поиск файлов с пробелами в их именах непосредственно перед расширением.
Раздел 4 - Экспорт списка этих файлов в виде текстового файла.
Использование утилиты Bulk Rename
Насколько я понимаю, у вас были небольшие проблемы с Bulk Rename Utility.
Предполагая, что ваше описание является точным (и есть только один или несколько пробелов в качестве последних символов перед расширением, например "ba room 56 .xxx"), вы можете просто использовать функцию Trim
в Remove (5)
не изменяя никаких параметров:
ех. Предварительный просмотр результатов
Чтобы было ясно:
Вы заметите, что только имена, которые будут изменены, будут отображаться зеленым цветом. Аналогично, это будет переименовывать только файлы, а не папки. Когда все будет выполнено, нажмите кнопку « Переименовать» в правом нижнем углу.
При желании вы можете сбросить все окно критериев переименования (если вы дурачились с другими вариантами или просто чувствовали себя осторожно) с помощью Действия → Сбросить все критерии переименования ( Ctrl+T ).
Включая подкаталоги
Утилита Bulk Rename обычно одновременно работает только с одной корневой папкой. Тем не менее, можно включить подкаталоги:
ех. Замены в подкаталогах
Вы можете включить эти папки, используя раздел Filters (12)
главного окна. Просто отметьте Subfolders
:
ех. Параметры фильтра
Я также снял флажок Folders
чтобы уменьшить визуальный беспорядок в окне предварительного просмотра (наше использование Trim
, как уже отмечалось, никак не влияет на папки). После того, как вы выбрали правильные параметры фильтра, используйте Выбрать все , 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 :
: