String aus mehreren Dateien finden und ersetzen, ohne eine neue Datei zu erstellen
814
Meera
Ich möchte z. B. "date" aus meinen Dateien eines Ordners suchen, der mehrere ".c" - und ".h" -Dateien enthält, und diese durch "date 24-April-2018" mit Batch-Datei ersetzen. was soll ich tun? Bitte sehen Sie den Code unten. Ich möchte dasselbe tun, aber nicht für eine Datei Input.txt, ich möchte für mehrere Dateien mit Erweiterungen eines Ordners
@echo off setlocal enableextensions disabledelayedexpansion set "search=@date" set "replace=@date 24-apr-2018" set "textFile=Input.txt" for /f "delims=" %%i in ('type "%textFile%" ^& break ^> "%textFile%" ') do ( set "line=%%i" setlocal enabledelayedexpansion >>"%textFile%" echo(!line:%search%=%replace%! endlocal )
Wenn Sie `textFile` über` set "textFile =% 1" `definieren, können Sie diese Batchdatei (z. B. SetDate.cmd) aufrufen, um die Datei im übergebenen Parameter zu aktualisieren. Dann können Sie `für% i in (DirPath \ FileMask) verwenden, rufen Sie SetDate.cmd% i auf und verdoppeln das`% `, wenn es sich in einer Batch-Datei befindet.
AFH vor 6 Jahren
1
Ich habe dich nicht bekommen. Kannst du mir bitte die Batch-File-Lösung geben?
Meera vor 6 Jahren
0
Ich habe vor kurzem mit [GrepWin] (https://github.com/stefankueng/grepWin) begonnen, um mehrere Textdateien und Speicherorte zu finden und zu ersetzen. Ich bin davon beeindruckt.
Andi Mohr vor 6 Jahren
0
@ Meera - Ich weiß nicht, was ich sonst noch erklären kann, ohne auf die Details einzugehen, die eine Antwort erfordern würden. Wenn Ihre Batch-Datei `SetDate.cmd` ist, bearbeiten Sie sie so, dass der dritte` set`-Befehl zu `set" textFile =% 1 "` wird. Rufen Sie dann mit `für% f auf (DirPath \ FileMask) und rufen Sie SetDate auf. cmd% f` von der Befehlszeile oder `für %% f in (DirPath \ FileMask) rufen SetDate.cmd %% f` in einer anderen Batchdatei auf. Ich hoffe, es ist klar, was "DirPath" und "FileMask" bedeuten.
AFH vor 6 Jahren
0
0 Antworten auf die Frage
Verwandte Probleme
-
5
Wie wird eine Datei automatisch auf einen anderen PC im Netzwerk verschoben?
-
2
Festlegen mehrerer Umgebungsvariablen in einer Shell, die über ein Windows-Batch-Skript erstellt wir...
-
1
Anzeigen und Speichern von Windows Batch-Dateiausgaben
-
2
Gruppenrichtlinien für Windows setzen versteckte Dateien beim Start als unsichtbar
-
5
Finden und ersetzen Sie mehrere Leerzeilen
-
2
Suchen und Ersetzen in Blogger
-
3
Ausführen der bat-Datei mit dem Windows-Scheduler
-
4
Wie kann ich unter Linux in allen PHP-Dateien rekursiv einen String ersetzen?
-
2
Kann ich Kommentare in ein SFTP-Batch-Dateiskript einfügen?
-
3
Windows Batch-Befehl zur Anzeige aller Netzwerkverbindungen?