ECHO funktioniert nicht mit Variablenausgabe

  • Moin,
    ich hab hier nen sehr seltsames Problem..

    Mit MS-DOS funktioniert dies Problemlos:
    SET TEST=HALLO
    echo %TEST%

    Ausgabe: HALLO

    Mit PC-DOS wird aber das nicht aufgelöst:
    SET TEST=HALLO
    echo %TEST%

    Ausgabe: %TEST%

    Hat jemand ne Idee, was hier schief läuft?

    Mark IV Style Motherfucker!

    Einmal editiert, zuletzt von Alpha (23. April 2012 um 01:24)

  • Sicher, daß du nicht ECHO %TEST% meinst? Wofür ist sonst die Zuweisung an die Variable TEST?

    "I think that computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image."
    (Stephen William Hawking)
    (Igor bevölkert das Winhistory-Forum seit dem 21.09.2006)
    (In the rpg commonly known as rl, Igor got an extra life on March 28, 2009)

  • Auwaja..
    Du hast recht ;) So solls auch sein. Aber wie gesagt, das Problem besteht.
    War nur ein Tippfehler gerade!

    Achja, via SET sind übrigens die Variablen gesetzt und sichtbar.

    Mark IV Style Motherfucker!

    Einmal editiert, zuletzt von Alpha (23. April 2012 um 01:25)

  • Falls du das Ganze innerhalb einer Batch-Datei machst, must Du vermutlich %%TEST%% schreiben. Schonmal probiert?

    "I think that computer viruses should count as life. I think it says something about human nature that the only form of life we have created so far is purely destructive. We've created life in our own image."
    (Stephen William Hawking)
    (Igor bevölkert das Winhistory-Forum seit dem 21.09.2006)
    (In the rpg commonly known as rl, Igor got an extra life on March 28, 2009)

  • Gleiches Resultat, egal ob vom Prompt oder aus Batch heraus? Funktioniert es mit einem anderen Aufruf als ECHO, zum Beispiel mal die Variable mit IF testen?

    Ich finde das auch höchst merkwürdig, aber ich meine, das in der Vergangenheit auch schon häufiger mit PATH erlebt zu haben


    Is das nicht %%TEST ohne die %% dahinter?

    Das gilt nur für FOR-Variablen innerhalb einer Batch.

    • • • – • – – • – –

    Einmal editiert, zuletzt von s4ndwichMakeR (24. April 2012 um 00:20)

  • Interessant.

    TEST.BAT:
    SET TEST=HALLO
    ECHO %TEST%

    Funktioniert, ein HALLO kommt raus.

    Direkt auf Prompt:
    SET TEST=HALLO
    ECHO %TEST%

    Funktioniert nicht, ein %TEST% kommt raus.

    Warum wird das nicht auf dem Prompt aufgelöst?!

    Mark IV Style Motherfucker!

  • Ich hab gerade intensive Recherche betrieben … ohne Erfolg. Aber du bist nicht der einzige mit dem Problem: http://www.computing.net/answers/dos/pc…read/15791.html

    Jetzt bin ich überfragt. Würde die Variablen-Auflösung mit ECHO gar nicht funktionieren, fände ich es immer noch plausibler als »Batch geht, Prompt geht nicht«. Okay, die Verarbeitung von Variablen in Batch-Dateien mittels ECHO erscheint sinnvoller als auf dem Prompt, wo man die Variablen auch mit SET einsehen kann, aber warum sollte man so eine Ausnahme extra einbauen?

    Funktionieren interne Variablen wie PATH mit ECHO?

    Welche PC-DOS-Version ist es eigentlich?

    • • • – • – – • – –

  • Wollte gerade den gleichen Beitrag wie s4ndwichMakeR schreiben.

    Eine Vermutung, die allerdings relativ absurd ist und wofür ich keine Bestätigung gefunden habe: Was, wenn "echo", weil interner Befehl, die Parameter gar nicht auflöst, sondern exakt wiedergibt was als Parameter übergeben wurde. Hast du schon mal versucht andere (externe) Programme zu verwenden, z.B. "edit %TEST%.txt"

  • Ich habe PC-DOS 2000 im Einsatz (aka PC-DOS 7.0 Rev 1)
    Schau mal auf YAFU, da liegt ne ISO von mir irgedwo.. da ist die COMMAND.COM direkt drin.

    Sonst musste heute bis Abend warten, bis ich wieder zu Hause bin.

    Mark IV Style Motherfucker!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!