florengray
Goto Top

Batch XP Zwei echos in einer Zeile in Datei umleiten

Hallo an alle Batchprofis!

Ich bastel grad an einem Batchschnipsel.
(Is nur´n Testschnipsel um die Frage zu verdeutlichen.)

@echo off
break on

echo echo Testanwendung.exe >> Ausgabe.bat >> Testfile.bat
pause

Also es soll folgendes geschehen: Das erste echo soll von dem zweiten echo bis zu Ausgabe.bat alles in die Datei Testfile.bat schreiben, sodass wenn ich die Testfile.bat aufrufe, die mir dann echo Testanwendung.exe in die Datei Ausgabe.bat schreibt.
Das klingt jetzt für diesen Fall sinnlos. In meiner richtige Batch aber löst es mein Problem.

Die Ausgabe:
Er schreibt bei mir nur ne Testfile.bat mit echo Testanwendung.exe.

Wie kann ich so was ermöglichen?

Ich hab schon versucht, das mit Variablen zu lösen.

set a= echo Testanwendung.exe
set b= >> Ausgabe.bat

echo %a%%b% >> Testfile.bat

Das geht auch nicht.
er kommt mit dem >> Ausgabe.txt nicht zurecht.
Egal ob Variable oder echo.

Könnt ihr mir Helfen??

Content-ID: 64713

Url: https://administrator.de/contentid/64713

Ausgedruckt am: 25.11.2024 um 08:11 Uhr

bastla
bastla 25.07.2007 um 22:51:17 Uhr
Goto Top
Hallo florengray!

Mit Maskierung der Umleitungszeichen sollte das klappen:
echo echo Testanwendung.exe ^>^> Ausgabe.bat >> Testfile.bat

Grüße
bastla
Biber
Biber 25.07.2007 um 23:20:48 Uhr
Goto Top
Moin florengray,

nichts zu ergänzen zu bastlas Antwort.
Aber wenn Du schon mal hier bist:

> help break
Schaltet (zusätzliche) Überwachung für Strg+C ein (ON) oder aus (OFF).

Dieser Befehl ist nur aus Kompatibilitätsgründen existent. Er hat keinen
Effekt unter Windows XP.


->Brauchst Du Dir gar nicht angewöhnen. Das gab es, als unsere Kanzler noch Helmut hießen.

Grüße
Biber
florengray
florengray 26.07.2007 um 09:32:18 Uhr
Goto Top
Ok werd ich mir abgewöhnen.
Aber ich konnte schon mal die ein oder andere Batch mit Strg+C abbrechen?
Naja.
Aber Danke für die Hilfe! Werd ich gleich ausprobieren!
Danke!

florengray
bastla
bastla 26.07.2007 um 10:19:12 Uhr
Goto Top
Hallo florengray!

Aber ich konnte schon mal die ein oder andere Batch mit Strg+C abbrechen?
... und das geht auch weiterhin, sogar ohne Angabe von "break on". Alternativ kannst Du Strg-Pause verwenden.

Grüße
bastla
florengray
florengray 26.07.2007 um 10:42:04 Uhr
Goto Top
Werd ich machen.
Also das mit der Maskierung funktioniert!
Danke!
Was genau läuft denn da nun ab?
Vielleicht ist es ja mal für was anderes nützlich, wenn ich das genau verstanden habe.
bastla
bastla 26.07.2007 um 12:08:51 Uhr
Goto Top
Hallo florengray!

Was genau läuft denn da nun ab?
Eigentlich nichts Besonderes - es wird nur der CMD-Interpreter angewiesen, das folgende Zeichen nicht zu "übersetzen" und die gegebenenfalls damit verbundene Funktion auszuführen, sondern es einfach als einzelnes Zeichen zu behandeln.

Ähnliche Situationen könnten zB neben dem "<" auch das "&" sowie das "|" betreffen ...

Grüße
bastla
Biber
Biber 26.07.2007 um 12:22:53 Uhr
Goto Top
Oder, um es mal so verständlich zu sagen, wie es M$ höchstselbst unter "Hinweise" in dem Hilfethema "Echobefehle Aktivieren und Deaktiveren" zusammengebrezelt hat:
[Quelle: "Befehlszeilenreferenz" via "Hilfe und Support" unter Win XP Pro dt.]
Verwenden Sie ein Caretzeichen (^), um Umleitungs- (< und >) oder Verkettungszeichen (|) zusammen mit echo zu verwenden. Geben Sie das Caretzeichen unmittelbar vor dem jeweiligen Zeichen ein (z. B. ^>, ^< oder ^| ). Geben Sie zwei aufeinander folgende Caretzeichen (^ ^) ein, wenn Sie das Caretzeichen selbst verwenden möchten.

Mit wem auch immer M$ kooperiert - mit der Firma Duden werden sie nie fusionieren.
Ich weiß nicht, ob geplant ist diese Hilfetexte auch in lebende Sprachen oder gar ins Deutsche zu übersetzen....
Sonst frag einfach noch mal hier im Forum.

Grüße
Biber
florengray
florengray 26.07.2007 um 14:00:10 Uhr
Goto Top
Verstanden.
Danke Danke Danke!

florengray