68023
Goto Top

Suchen des zweiten Vorkommens eines Strings

Hallo,

wir haben gemeinsam hier dieses klasse Skript erarbeitet:

chcp 1252
@echo off & setlocal
cls

echo Alle Berichte werden mit dem aktuellen Monat versehen!

set jahralt=
set /p jahralt=Welches Jahr soll gesucht werden? 

set jahrneu=
set /p jahrneu=Welches neue Jahr soll eingetragen werden? 

set monat=
set /p monat=Welcher Monat soll eingetragen werden? 

echo Sollen jetzt wirklich alle Dateinamen ueberschrieben werden? 
echo Der Vorgang kann nicht rueckgaengig gemacht werden! 

set choice=
set /p choice=Geben Sie j fuer ja, n fuer nein ein. 
if /i "%choice%" neq "j" goto :END  

:rename
echo Dateinamen werden aktualisiert...
set "Muster=*_%jahralt%-*.xls"  

for %%i in ("%cd%\%Muster%") do for /f "delims=_" %%a in ("%%~ni") do ren "%%i" "%%a_%jahrneu%-%monat%%%~xi"   

:END
echo Zum Beenden beliebige Taste!
pause > NUL

Es funktioniert prima. Das Skript sucht nach dem Suchmuster und schneidet hinter _ ab und fügt das neue Datum an den Dateinamen.

Nun die Frage: Es kommen nun in den Dateinamen zwei _ vor. Erst nach dem zweiten soll abgeschnitten werden.
Wie kann ich das anpassen?

Danke!
Nico

Content-Key: 95260

Url: https://administrator.de/contentid/95260

Printed on: April 24, 2024 at 11:04 o'clock

Member: bastla
bastla Aug 25, 2008 at 13:19:45 (UTC)
Goto Top
Hallo Prinzipal87!

Versuch es mit der folgenden neuen Zeile 27:
for %%i in ("%cd%\%Muster%") do for /f "tokens=1-2 delims=_" %%a in ("%%~ni") do ren "%%i" "%%a_%%b_%jahrneu%-%monat%%%~xi"  
Grüße
bastla
Mitglied: 68023
68023 Aug 25, 2008 at 13:27:12 (UTC)
Goto Top
Hallo!

Herzlichen Dank, das klappt super.
Darf ich fragen woher du dein Wissen nimmst?
Kannst du Literatur/Webseiten/etc empfehlen?

Ich bin ja lernwillig ,)
Nico
Member: bastla
bastla Aug 25, 2008 at 14:29:51 (UTC)
Goto Top
Hallo prinzipal87!

Auch wenn ich mit Batch (allerdings nur aus der "command.com"-Ära face-wink) "aufgewachsen" bin und daher ein gewisser Grundstock vorhanden war, habe ich mich doch erst in den letzten beiden Jahren wieder intensiver damit beschäftigt und eigentlich alles, was ich über die (viel umfangreicheren) Möglichkeiten der "cmd.exe" weiß, von dieser Website ... face-wink

Grüße
bastla