Inti29 10 Geschrieben 17. Januar 2005 Melden Geschrieben 17. Januar 2005 ich werd' noch kirre - ich finde dazu einfach nichts... Ich lege über eine Batch temporär Dateien an. Folgendes funktioniert soweit <vorher schon ein paar Zeilen angelegt> ECHO echo Computer \\%%1 wird mit Ping ueberprueft... >> temp.bat aber dann soll folgende Zeile hinzugefügt werden. "%currdir%alive" /Repeat=2 /Timeout=1 %1 > nul Das geht hier nicht: ECHO "%%currdir%%alive" /Repeat=2 /Timeout=1 %%1 > nul >> temp.bat Das Ergebnis der temp.bat ist: "%currdir%alive" /Repeat=2 /Timeout=1 %1 ...es fehlt das "> nul" Anscheinend kann DOS dieses Zeichenkette "> nul" irgendwie nicht verarbeiten und stellt mir das Zeichen nicht dar.. Wie binde ich das Zeichen ein? Inti29(+4) Anhang: test.zip
lefg 276 Geschrieben 17. Januar 2005 Melden Geschrieben 17. Januar 2005 Warum schickst Du die Zeichenkette an das Gerät nul? Umlenkung von Ein- und Ausgabe: BEFEHL > DATEI lenkt die Ausgabe auf eine angegebene Datei oder ein Standardgerät (LPT1, CON, PRN oder CONOUTS$) um. C:\DIR > DIR.TXT leitet das Inhaltsverzeichnis von C:\ in die Textdatei DIR.TXT. Dabei wird die Textdatei immer neu erstellt. C:\DIR >> DIR.TXT leitet das Inhaltsverzeichnis von C:\ an das Ende einer vorhandenen Textdatei DIR.TXT oder erstellt diese neu. BEFEHL < DATEI leitet die Daten aus einer Datei in eine Befehlseingabe um. BEFEHL 2> DATEI leitet Fehlermeldungen eines Befehls in die angegebene Datei um. BEFEHL > DATEI 2>&1 leitet die Ausgabe und die Fehlermeldungen in die gleiche Datei um. BEFEHL | BEFEHL leitet die Ausgabe eines Befehls in die Eingabe des nächsten Befehls (Pipe). C:\DIR | MORE leitet das Inhaltsverzeichnis in den MORE-Befehl zur seitenweise Anzeige. http://www.bb-sys.de/bbshell.htm#befehl
lefg 276 Geschrieben 17. Januar 2005 Melden Geschrieben 17. Januar 2005 Was da in der Eröffnung geschehen soll, wofür das gut ist, geht mir nicht auf. Ah, ich begreife, da wird eine Batch generiert. Baue die zu Zeichenkette in einer Variablen zusammen! Schicke den Inhalt der Variablen mit Echo in die Batch! set variable=Inhalt echo Variable >> temp.bat Es ist nicht immer einfach. Eventuell bedarf es dazu mehrerer Set-Operationen. Es ist ein Weilchen her, dass ich so etwas gemacht habe. Viel Erfolg Edgar
Inti29 10 Geschrieben 17. Januar 2005 Autor Melden Geschrieben 17. Januar 2005 ECHO Texte dürfen nicht die Zeichen "<", ">" oder "|" enthalten, da diese für Umleitungen/Pipes reserviert sind - soweit bin ich schon... :( Die temp.bat, die generiert wird, wird später von einer anderen Datei aufgerufen und die Zeile, die dann verarbeitet wird muss halt so aussehen: "%currdir%alive" /Repeat=2 /Timeout=1 %1 > nul Geht das irgendwas über ASCII oder so? Inti31
klausk 10 Geschrieben 17. Januar 2005 Melden Geschrieben 17. Januar 2005 Sonderzeichen wie ">" können mit vorangestelltem "^" ausgegeben werden. "%currdir%alive" /Repeat=2 /Timeout=1 %1 ^> nul
lefg 276 Geschrieben 17. Januar 2005 Melden Geschrieben 17. Januar 2005 echo Rock ^& Roll http://www.bb-sys.de/bbshell.htm#befehl Leider funktioniert bei mir set var=Rock ^& Roll echo %var% nicht. Aber der Tipp von klausk funktioniert.
Inti29 10 Geschrieben 17. Januar 2005 Autor Melden Geschrieben 17. Januar 2005 DANKE !!!!!!! @klausk Genau so geht's Inti29(+4)
klausk 10 Geschrieben 17. Januar 2005 Melden Geschrieben 17. Januar 2005 Super, das es geklappt hat und danke für die Rückmeldung :)
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden