CMD: Suchen, Ersetzen und Hochzählen
Hallo zusammen
Ich habe folgendes Problem
In einer Datei muss ein Wert gefunden, auf Korrektheit geprüft und evtl. ersetzt/geändert werden.
Die Datei enthält folgenden Inhalt:
Der Wert hinter "file_zaehler" muss allerdings immer 4stellig sein und daher, falls wie im Beispiel nur 2stellig vorhanden, mit führenden Nullen aufgefüllt werden.
Es sollte dann am Ende so aussehen
Fallbeispiele:
Lässt sich das irgendwie bewerkstelligen?
Ich habe folgendes Problem
In einer Datei muss ein Wert gefunden, auf Korrektheit geprüft und evtl. ersetzt/geändert werden.
Die Datei enthält folgenden Inhalt:
[FTP]
file_zaehler=17
sende_stauts=TRUE
file_zaehler=17
sende_stauts=TRUE
Der Wert hinter "file_zaehler" muss allerdings immer 4stellig sein und daher, falls wie im Beispiel nur 2stellig vorhanden, mit führenden Nullen aufgefüllt werden.
Es sollte dann am Ende so aussehen
[FTP]
file_zaehler=0017
sende_stauts=TRUE
file_zaehler=0017
sende_stauts=TRUE
Fallbeispiele:
7 = 0007
70 = 0070
700 = 0700
7000 = 7000 (keine Änderung)
70 = 0070
700 = 0700
7000 = 7000 (keine Änderung)
Lässt sich das irgendwie bewerkstelligen?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 261246
Url: https://administrator.de/contentid/261246
Ausgedruckt am: 26.11.2024 um 05:11 Uhr
3 Kommentare
Neuester Kommentar
Nutz mal die Suche, das gabs hier schon so oft, zur Abwechslung mal mit Powershell etwa so
Gruß jodel32
$file = 'c:\data.txt'
$content = gc $file
$num = ([regex]'file_zaehler=(\d*)')::match($content).Groups[1].Value
[int]$num +=1 ; $num = $num.toString().padLeft(4,'0')
$content -replace '(file_zaehler=).*',('$1' + $num) | Set-Content $file
Zur Info wie man mit Batch Zahlen um Nullen ergänzt:
Damit bekommst du immer eine 4 stellige Zahl mit führenden Nullen ....
set /a zahl=70
set /a zahl=10000+%zahl%
echo %zahl:~-4%