6

У меня есть две папки в Windows 8.1. Первая папка a содержит 50 файлов .jpg номерами от 01.jpg до 50.jpg . Моя вторая папка, b , имеет такое же количество файлов .jpg названных точно таким же образом.

Моя цель - объединить эти две папки, но переименовать файлы в b 51.jpg до 100.jpg чтобы они оставались в том же порядке.

7 ответов7

13
  1. Выберите все файлы из папки. Переименование первого файла из выбора, так как нумерация произойдет самостоятельно.
  2. Аналогично переименуйте папку b в b-
  3. Затем переместите файлы из папки b в папку a. (Если у вас есть сортировка по имени)
  4. Снова переименуйте файлы как img-
    У вас будет нумерация как img-1 .....
13

Windows 8.1 имеет встроенную PowerShell, поэтому вы можете использовать что-то вроде этого:

1..50|Rename-Item -Path {'{0:00}.jpg'-f$_} -NewName {'{0:00}.jpg'-f($_+50)}

В приведенном выше примере первый 0 в {0:00} указывает индекс параметра, а второй 00 указывает формат в виде двух цифр, дополненных нулями.

3

Это, вероятно, лучше спросить в SoftwareRecommendations.SE, но я скажу, что я использовал бесплатную утилиту массового переименования во многих случаях и нашел ее очень полезной, простой в использовании и чрезвычайно мощной.

Скриншот утилиты Bulk Rename

В отличие от многих бесплатных программ, интерфейс является лаконичным и нативным, а программное обеспечение полностью бесплатным, поэтому вам не придется беспокоиться о пробных ограничениях и неудобствах, распространенных в бесплатном ПО. Я лично нашел это очень полезным при организации моей музыкальной библиотеки.

(Я никоим образом не связан с автором)

3

Настоятельно рекомендую IrfanView. Он имеет самые удивительные настройки для массового переименования файлов.

Более подробная информация здесь: http://www.irfanview.com/faq.htm#Q13

2

Это старый и, возможно, слишком сложный, но в CMD.exe вы можете решить это следующим образом:

@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION

SET COUNTER=1
FOR %%A IN ("a","b") DO (
    SET FOLDER=%%A
    FOR /F %%F IN ('DIR /B /ON !FOLDER!') DO (
        SET FILE=%%F
        COPY !FOLDER!\%%F c\!COUNTER!!FILE:~-4!
        SET /A COUNTER= !COUNTER! + 1
    )
)  
0

Как и в случае с Niki выше, используйте DOS или утилиту CMD.

В DOS C:\FolderA> (переместить в папку с файлами A)
Переименуйте все файлы за один раз REN \*.jpg A-\*.jpg

перейдите в папку B с помощью CD - смените каталог
Переименовать все файлы за один раз REN \*.jpg B-\*.jpg

Затем скопируйте b-файлы в папку A.
Copy B\*.jpg c:\FolderA\

-1

Я бы порекомендовал http://www.advancedrenamer.com/ в качестве альтернативного «простого нажатия». Я на самом деле использую его все время для пакетного переименования, где мне нужен определенный шаблон или нужно убрать глупости из растерянных имен других людей ;-)

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