subway2002
Newbie
- Registriert
- Okt. 2014
- Beiträge
- 4
Hallo Leute!
ich bin neu in diesem Forum und suche eine möglichkeit via Batch-Rename mehrere Dateinamen mit den 2 übergeordneten Ordnernamen zu erweitern.
Ich habe scho nein bisschen im Forum gesucht allerdings nciht das richtige gefunden. Dazu muss ich sagen das ich wenig Ahnung von Batch Programmen?! bzw. Windows-Shell habe.
Kleines Beispiel für das Problem:
In einem Ordner sind mehrere Unterordner in denen die zu verändernden Dateien sind. Es sind immer drei Dateien mit den Endungen *.$101, *.$102, *.$103
c:\test\1.2\34DOLE\Dateiname1.$101
c:\test\1.2\34DOLE\Dateiname2.$102
c:\test\1.2\34DOLE\Dateiname3.$103
Am Ende sollen die Dateien vorzugsweise im obersten Ordner sein (hier "test").
Neue Namen wären:
1.2_34DOLE_Dateiname1.$101
1.2_34DOLE_Dateiname2.$102
1.2_34DOLE_Dateiname3.$103
Meine Test sie wie folgt aus:
for %%* in (.) do set CurrDirName0=%%~n*
for %%* in (.) do set CurrDirName=%%~n*
::for %%* in (..) do set CurrDirName2=%%~n*
echo %CurrDirName%
::echo %CurrDirName2%
for /f %%* in (.) do set CurrDirName3=%%~n*
set "prefix=%CurrDirName0%_%CurrDirName3%"
set "rootdir=%CD%"
set "filefilter=*.$10*"
FOR /F "delims=" %%i in ('dir "%rootdir%\%filefilter%" /B^|findstr /V /I /B "%prefix%"') do ren "%%~fi" "%prefix%%%~nxi"
::For /F "Delims=" %%i in ('dir *.$10* /b /s') do move "%%i" ..
)
pause
Für jeden Tipp bin ich dankbar!
Viele Grüße,
Subway
ich bin neu in diesem Forum und suche eine möglichkeit via Batch-Rename mehrere Dateinamen mit den 2 übergeordneten Ordnernamen zu erweitern.
Ich habe scho nein bisschen im Forum gesucht allerdings nciht das richtige gefunden. Dazu muss ich sagen das ich wenig Ahnung von Batch Programmen?! bzw. Windows-Shell habe.
Kleines Beispiel für das Problem:
In einem Ordner sind mehrere Unterordner in denen die zu verändernden Dateien sind. Es sind immer drei Dateien mit den Endungen *.$101, *.$102, *.$103
c:\test\1.2\34DOLE\Dateiname1.$101
c:\test\1.2\34DOLE\Dateiname2.$102
c:\test\1.2\34DOLE\Dateiname3.$103
Am Ende sollen die Dateien vorzugsweise im obersten Ordner sein (hier "test").
Neue Namen wären:
1.2_34DOLE_Dateiname1.$101
1.2_34DOLE_Dateiname2.$102
1.2_34DOLE_Dateiname3.$103
Meine Test sie wie folgt aus:
for %%* in (.) do set CurrDirName0=%%~n*
for %%* in (.) do set CurrDirName=%%~n*
::for %%* in (..) do set CurrDirName2=%%~n*
echo %CurrDirName%
::echo %CurrDirName2%
for /f %%* in (.) do set CurrDirName3=%%~n*
set "prefix=%CurrDirName0%_%CurrDirName3%"
set "rootdir=%CD%"
set "filefilter=*.$10*"
FOR /F "delims=" %%i in ('dir "%rootdir%\%filefilter%" /B^|findstr /V /I /B "%prefix%"') do ren "%%~fi" "%prefix%%%~nxi"
::For /F "Delims=" %%i in ('dir *.$10* /b /s') do move "%%i" ..
)
pause
Für jeden Tipp bin ich dankbar!
Viele Grüße,
Subway