DOS-Hilfen in Datei umleiten

Hallo zusammen,

wie kann ich den Hilfetext zur Aufrufsyntax
eines DOS-Programms in eine Datei umlenken
oder am Bildschirm seitenweise anzeigen lassen?

Unter http://www.winfaq.de/faq_html/faq_fr.htm
(Kommandozeilenoberfläche->„Wie kann ich alle Ausgaben einer Batchdatei umleiten?“)
las ich, dass in DOS (analog Unix) die
Fehlerausgabe eines Programms nach STDOUT verlegt und die
Standardausgabe dann in eine Datei umgelenkt werden kann:

DATEI.BAT>c:\log.txt 2>&1

Nur wenn ich das z.B. mit der Ausgabe des route-Befehls
mache, bleibt die Datei leer:

C:\\>route\>route.txt 2\>&1

Wieso führt die letzte Befehlszeile unter Win98
nicht zum Erfolg und wie muss ich es richtig machen?
Kann man in DOS Kanalnummern mit Umleitungen verknüpfen?

Schonmal Danke für Eure Tipps!

Gruss,
-Andreas.

Seitenweise anzeigen: „| more“ anhängen.

Umleiten in Datei: „> Dateiname.txt“ anhängen.

Hallo Dirk,

Seitenweise anzeigen: „| more“ anhängen.

Umleiten in Datei: „> Dateiname.txt“ anhängen.

OK, so weit weiss ich das auch. Aber für das
route Beispiel funktioniert das nicht!
Bei

c:\route|more

und 

c:\route\>route.txt

wird die Ausgabe weiterhin nur auf den Bildschirm
geschrieben. Schreibt das Programm vielleicht auf
den Fehlerausgabekanal? Wie kann ich den in eine
Datei umlenken?

-Andreas (immer noch ratlos …)

Moin Andreas,

der route braucht immer erst mal ein Befehlswort, also {PRINT|ADD|DELETE|CHANGE}, bevor die Umlenkung [>] angegeben wird. Route verhält sich hier offensichtlich anders als der Rest der DOS-Befehle.

Zu den Kanalnummern: ich weiß nicht einmal, was Kanäle sind (Schande).

Gruß Ralf

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

versuch es so
type c:\route |more
bzw.
type :c:\route >route.txt

Gruß,
Micha

Hi Micha,

type c:\route |more
bzw.
type :c:\route >route.txt

Mit type läßt sich leider nur der Quelltext des
Route-Programms anzeigen :frowning:(

Mir ging es aber um die seitenweise Anzeige der
Benutzungssyntax (> 1 Bildschirmseite!) des route-Befehls,
die erscheint, wenn der Befehl keine Parameter übergeben
bekommt.

Hab die Hilfe nun lesen können, indem ich den Binärcode
von route in einem Hex-Editor öffnete und dann nach
dem Hilfetext gesucht habe. Aber das muss
doch auch einfacher gehen. Hast Du noch eine andere
Idee???

Gruss,
-Andreas.

Hi Ralf,

der route braucht immer erst mal ein Befehlswort, also
{PRINT|ADD|DELETE|CHANGE}, bevor die Umlenkung [>]
angegeben wird. Route verhält sich hier offensichtlich anders
als der Rest der DOS-Befehle.

Wenn ich mir aber die Aufrufsyntax des Befehls erst
mal anschauen möchte, hab ich da wohl ein Problem.
Die läßt sich scheinbar nicht seitenweise anzeigen :frowning:

Zu den Kanalnummern: ich weiß nicht einmal, was Kanäle sind

Ich hab mich mal ein bisschen mit Unix beschäftigt
und darin hat jeder Prozess standardmässig 3
Kommunikationskanäle geöffnet. Einen Eingabekanal
STDIN mit der Nummer 0. Den Ausgabekanal STDOUT mit der
Nummer 1 für normale Programmausgaben und einen
Kanal Nummer 2 für die Fehlermeldungen (STDERR).

Jedem Kanal eines Prozesses wird intern eine Nummer (sog.
Dateideskriptor) zugeordnet. Dateideskriptoren können
in Unix als Zahl auch direkt in der Kommandozeile zur
Umleitung verwendet werden.

Um z.B. die Fehlermeldungen eines Programms separat in
eine Datei zu lenken, kann man in Unix schreiben

programm 2\> fehler.txt 

da der Fehlerkanal mit dem Dateideskriptor 2 versehen ist.

Unter www.winfaq.de fand ich jetzt ebenfalls obige
Syntax mit Kanlanummern als DOS-Befehl, deshalb dachte
ich das würde dort genauso funktionieren …

Hast Du noch eine Idee, wie ich an den Hilfetext von route
auf der Kommandozeile rankommen kann?

Gruss,
-Amdreas.