2013-06-07 3 views
0

У меня есть Struktur папки так:Как навалом добавить имя папки в имя файла?

/1/1/master.jpg
/1/2/master.jpg
/1/3/master.jpg
/2/1/мастер .jpg
/2/2/master.jpg
/2/3/master.jpg
...

Мне нужно импортировать все изображения на веб-сайт, но имя файла должны отличаться друг друга, поэтому я не могу импортировать два (или) файла с тем же именем. Просто сопоставляя изображения с master1.jpg, master2.jpg, ... с помощью, например, AntRenamer не является подходящим решением, потому что пути/имена изображений назначаются на номер элемента в файле csv, который мне также нужно импортировать.

Итак: Как я могу добавить имена папок в файлы, подобные этому?

/1/1/1_1_master.jpg
/1/2/1_2_master.jpg
/1/3/1_3_master.jpg
/2/1/2_1_master.jpg
/2/2/2_2_master .jpg
/2/3/2_3_master.jpg
...

Спасибо за вашу помощь! Timo

+0

Является ли это в Linux? Некоторые люди используют/даже при том, что используют Windows. – foxidrive

+0

Linux или windows, оба доступны ;-) – Timo

ответ

0
@echo off 
setlocal EnableDelayedExpansion 
cd C:\Parent\Folder\OfFirstNumberedFolders 
for /F "delims=" %%a in ('dir /B /S /A-D master.jpg') do (
    set "fullName=%%a" 
    for /F "tokens=1-3 delims=\" %%b in ("!fullName:%CD%=!") do (
     ECHO ren "%%a" "%%b_%%c_%%d" 
    ) 
) 
0

Попробуйте это в Windows. Удалите echo, чтобы он действительно выполнял переименование.

@echo off 
for /f "delims=" %%z in ('dir "master.jpg" /b /s /a-d ') do (
for %%a in ("%%~dpz%\.") do (
for %%b in ("%%~dpa\.") do (
echo ren "%%z" "%%~nxb_%%~nxa_%%~nxz" 
) 
) 
) 
pause 
Смежные вопросы