Versuchen Sie, diese (Dateinamen und Pfade entsprechend anpassen):
for %%F in ("C:\...\*.txt") do (
> "%%~F.tmp" type "Header.txt"
>> "%%~F.tmp" type "%%~F"
move /Y "%%~F.tmp" "%%~F"
)
Dieser Inhalt von Header.txt
und dem verarbeiteten kombiniert Textdatei in einer temporären Datei (z. B. die Textdatei ist Body.txt
, also die temporäre Datei ist Body.txt.tmp
), dann verschiebt sie die Temproary-Datei über den ursprünglichen Text f ile, daher wird es ersetzt. Beachten Sie, dass die Überschrift in der Datei Header.txt
mit einem Zeilenumbruch beendet werden muss; Andernfalls werden die Überschrift und die erste Zeile der Textdatei zu einer einzelnen Textzeile zusammengefasst.
Um die Dateien zu überprüfen, ob die bereits den Header eingefügt wurden, können Sie die ersten Zeilen in eine Variable umleiten und vergleichen sie mit der ersten Zeile der Header-Datei, wie folgt aus:
< "Header.txt" set /P HEAD=""
for %%F in ("C:\...\*.txt") do (
< "%%~F" set /P LINE=""
setlocal EnableDelayedExpansion
if not "!LINE!"=="!HEAD!" (
endlocal
> "%%~F.tmp" type "Header.txt"
>> "%%~F.tmp" type "%%~F"
move /Y "%%~F.tmp" "%%~F"
) else endlocal
)
Jede einzelne Datei wird hier einzeln geprüft. Dazu benötigen Sie delayed expansion, während Sie in einen Codeblock schreiben und von derselben Variablen lesen, also die for
-Schleife.
Vielen Dank ... es funktioniert ... :) Ich brauche eine zusätzliche Funktionalität auf diesem. Bitte helfen Sie mir darin. Sobald die Batch-Datei ausgeführt und Task erfolgreich abgeschlossen wurde, sollte wieder, wenn der Benutzer versucht, die gleiche Batch-Datei auszuführen, sollte es den Benutzer beim Hinzufügen von Text (ich meine Header) in Dateien und sollte durch eine Fehlermeldung wie "Header ist bereits in den Dateien enthalten. Führen Sie nicht die Batch-Datei". ..... Vielen Dank im Voraus ..... –
Ich muss auch Fußzeile am Ende der Zeile hinzufügen. Footer Inhalt wird in einer separaten Datei sein. –
Fügen Sie nach dem 'move' Befehl die Zeile' >> "%% ~ F" ein und tippen Sie "Footer.txt" '... – aschipfl