Per Batch Inhalt von versch. Dateien eines Verz. in eine Datei mit Leerzeile getrennt kopieren
Schönen guten Abend,
bin schon eine Weile am suchen und Anfänger in puncto Batcherstellung.
Vielleicht fällt jemand ad hoc was dazu ein.
Es sollen in einem bestimmten Verzeichnis alle dort vorhandenen Inhalte von Textdateien in eine einzige Textdatei kopiert werden.
Bisher habe ich copy c:\temp\*.* e:\test.txt.
Der Inhalt jeder Datei soll allerdings durch einen Leerzeile getrennt in die test.txt geschrieben werden.
Besten Dank für Eure Tipps!
bin schon eine Weile am suchen und Anfänger in puncto Batcherstellung.
Vielleicht fällt jemand ad hoc was dazu ein.
Es sollen in einem bestimmten Verzeichnis alle dort vorhandenen Inhalte von Textdateien in eine einzige Textdatei kopiert werden.
Bisher habe ich copy c:\temp\*.* e:\test.txt.
Der Inhalt jeder Datei soll allerdings durch einen Leerzeile getrennt in die test.txt geschrieben werden.
Besten Dank für Eure Tipps!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 87720
Url: https://administrator.de/contentid/87720
Ausgedruckt am: 25.11.2024 um 20:11 Uhr
7 Kommentare
Neuester Kommentar
Servus,
ganz banal würde es ungefähr so gehen.
Da du aber eine Leerzeile dazwischen haben willst - mußt du es per For Schleife realisieren.
Und bei For Schleifen gibt es hier zwei richtig gute Profis.
Die haben bestimmt was in Petto
ganz banal würde es ungefähr so gehen.
type c:\temp\*.txt >>c:\temp\test.ini
Da du aber eine Leerzeile dazwischen haben willst - mußt du es per For Schleife realisieren.
Und bei For Schleifen gibt es hier zwei richtig gute Profis.
Die haben bestimmt was in Petto
Hallo meandmyself und willkommen im Forum!
Wie von TimoBeil angesprochen, benötigst Du eine "for"-Schleife, um jede Datei einzeln ausgeben zu können - etwa so:
Wenn Du die obige Zeile nicht direkt eingeben, sondern in einem Batch verwenden willst, jeweils %%i schreiben, und falls Du eine bestimmte Reihenfolge der Dateien benötigst oder Dich der Schönheitsfehler "Leerzeile am Ende der Zieldatei" stört, sag Bescheid.
[Edit] Etwas eleganter wäre:
[/Edit]
Grüße
bastla
Wie von TimoBeil angesprochen, benötigst Du eine "for"-Schleife, um jede Datei einzeln ausgeben zu können - etwa so:
for %i in (c:\temp\*.*) do type "%i">>e:\test.txt & echo\>>e:\test.txt
[Edit] Etwas eleganter wäre:
for %i in (c:\temp\*.*) do (type "%i" & echo\)>>e:\test.txt
Grüße
bastla
Hallo meandmyself!
Der saubere Weg wäre der von Dir beschriebene, aber es ginge auch so:
Damit wird auf jeden Fall versucht, die Zieldatei zu löschen - falls sie nicht vorhanden ist, unterdrückt die Umleitung "2>nul" die ansonsten fällige Fehlermeldung "e:\test.txt konnte nicht gefunden werden".
Grüße
bastla
Der saubere Weg wäre der von Dir beschriebene, aber es ginge auch so:
del e:\test.txt 2>nul & for %i in (c:\temp\*.*) do (type "%i" & echo\)>>e:\test.txt
Grüße
bastla
Hallo meandmyself!
Bevor Du das tust, hätte ich noch einen Job für Dich: Wie kann ich einen Beitrag als gelöst markieren?
Grüße
bastla
Bevor Du das tust, hätte ich noch einen Job für Dich: Wie kann ich einen Beitrag als gelöst markieren?
Grüße
bastla