Batch Leerzeile in Datei einfügen
Hallo,
ich ahbe folgendes Problem:
Ich will mir grad n Programm schreiben das mir eine txt Datei erstellt in der ein Text stehen soll, unter anderem auch mit Leerzeilen.
Aber ich weiß nicht wie ich die Leerzeilen reinbekomme.
So hab ichs schon probiert:
echo blubbb 4 fff > fff.txt
echo >> fff.txt
echo blub2 >> fff.txt
rauskommen tut aber
blubbb 4 fff
ECHO is on.
blub2
und nicht
blubbb 4 fff
blub2
wie bekomme ich nun die Leerzeile hinein?
und dann wollte ich noch wissen ob es möglich ist einen längeren Text, auch mit Zeilenbruchen etc, als Variable zu definieren?
Schonmal vielen Danl für eure Hilfe.
leb0rtran
ich ahbe folgendes Problem:
Ich will mir grad n Programm schreiben das mir eine txt Datei erstellt in der ein Text stehen soll, unter anderem auch mit Leerzeilen.
Aber ich weiß nicht wie ich die Leerzeilen reinbekomme.
So hab ichs schon probiert:
echo blubbb 4 fff > fff.txt
echo >> fff.txt
echo blub2 >> fff.txt
rauskommen tut aber
blubbb 4 fff
ECHO is on.
blub2
und nicht
blubbb 4 fff
blub2
wie bekomme ich nun die Leerzeile hinein?
und dann wollte ich noch wissen ob es möglich ist einen längeren Text, auch mit Zeilenbruchen etc, als Variable zu definieren?
Schonmal vielen Danl für eure Hilfe.
leb0rtran
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 56128
Url: https://administrator.de/contentid/56128
Ausgedruckt am: 14.11.2024 um 21:11 Uhr
8 Kommentare
Neuester Kommentar
Hallo leb0rtran!
Schließe mich Dani's Empfehlung (auf Biber zu warten) an, hätte aber eine Idee für einen Workaround:
Wenn es bei den längeren Texten um fertige Textbausteine geht, könntest Du diese in Textdateien ablegen und per
einsetzen, bzw die Bausteinnummer einer Variablen zuweisen und diese dann so verwenden:
Sollen auch variable Bestandteile hinein, würde mir nur einfallen, die Zeilen vor und die Zeilen nach der Zeile mit dem variablen Inhalt jeweils in einzelne Dateien zu packen und die "variable" Zeile on the fly zusammenzubauen, also etwa:
Die von mir verwendete Variable %Ausgabe% für die Ausgabedatei soll die Wartungsfreundlichkeit erhöhen, da bei Bedarf der Dateiname nur an einer einzigen Stelle geändert werden muss.
Grüße
bastla
Schließe mich Dani's Empfehlung (auf Biber zu warten) an, hätte aber eine Idee für einen Workaround:
Wenn es bei den längeren Texten um fertige Textbausteine geht, könntest Du diese in Textdateien ablegen und per
type Baustein1.txt>>fff.txt
type Baustein%Nr%.txt>>fff.txt
Sollen auch variable Bestandteile hinein, würde mir nur einfallen, die Zeilen vor und die Zeilen nach der Zeile mit dem variablen Inhalt jeweils in einzelne Dateien zu packen und die "variable" Zeile on the fly zusammenzubauen, also etwa:
set "Ausgabe=fff.txt"
type Baustein%Nr%Vor.txt>>%Ausgabe%
echo erstellt am %date% um %time:~0,5% MESZ>>%Ausgabe%
type Baustein%Nr%Nach.txt>>%Ausgabe%
Grüße
bastla
Das Vergewaltigen des Environments durch mehrzeilige Variablen halte ich für keine gute Idee.
Textbausteine kann man genauso gut als Datei ablegen und verwenden, zumal die Größe von einer einzelnen Variablen im Environment auf 8912 Byte begrenzt ist und das gesamte Environment 64K nicht überschreiten darf. Wo ist die Grenze?
Textbausteine kann man genauso gut als Datei ablegen und verwenden, zumal die Größe von einer einzelnen Variablen im Environment auf 8912 Byte begrenzt ist und das gesamte Environment 64K nicht überschreiten darf. Wo ist die Grenze?
Hallo leb0rtran!
Alle Zeichen, die in Batch für besondere Funktionen verwendet werden (bei Deinem Beispiel also konkret "<", ">" und "|"), müssen mit "^" maskiert werden, daher:
Nur als Anmerkung: Je nach Codepage werden die Grad-Zeichen "°" unterschiedlich dargestellt - unter ASCII (also im CMD-Fenster) müsstest Du dafür "ø" verwenden - siehe im Beispiel oben.
Grüße
bastla
Alle Zeichen, die in Batch für besondere Funktionen verwendet werden (bei Deinem Beispiel also konkret "<", ">" und "|"), müssen mit "^" maskiert werden, daher:
echo [B][SIZE="4"]^<ø^<°^<°^<°^<°^<°^<°^<°^<°^<---^>°^>°^>°^>°^>°^>°^>°^>°^>°^>[/SIZE][/B]>>2.txt
echo [FONT="Fixedsys"]Ihr schreibt eine nette, nicht zu kurze, PM mit dem Betreff: %name%^|Nick^|Posts^|Status^|Anbindung^|>>2.txt
Grüße
bastla