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-Key: 64713

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

Printed on: April 25, 2024 at 22:04 o'clock

Member: bastla
bastla Jul 25, 2007 at 20:51:17 (UTC)
Goto Top
Hallo florengray!

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

Grüße
bastla
Member: Biber
Biber Jul 25, 2007 at 21:20:48 (UTC)
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
Member: florengray
florengray Jul 26, 2007 at 07:32:18 (UTC)
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
Member: bastla
bastla Jul 26, 2007 at 08:19:12 (UTC)
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
Member: florengray
florengray Jul 26, 2007 at 08:42:04 (UTC)
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.
Member: bastla
bastla Jul 26, 2007 at 10:08:51 (UTC)
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
Member: Biber
Biber Jul 26, 2007 at 10:22:53 (UTC)
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
Member: florengray
florengray Jul 26, 2007 at 12:00:10 (UTC)
Goto Top
Verstanden.
Danke Danke Danke!

florengray