Wie entkomme ich dem> -Zeichen in der Windows-Befehlszeile?

8

Zum Beispiel foo -option 10->30 file.ext(dies ist eine tatsächliche Syntax erforderlich) leitet die Ausgabe in eine Datei mit dem Namen 30 um. Wie kann ich cmd verständlich machen, dass ich das tatsächliche Zeichen> übergeben möchte? Ich habe verschiedene Formen von doppelten Anführungszeichen ohne Erfolg ausprobiert.

MaxVT
quelle

Antworten:

11

Das cmd-Escape-Zeichen lautet wie folgt ^:

foo -option 10-^>30 file.ext

sollte für dich arbeiten

MattB
quelle
Ich hätte das nie gewusst / erraten - ich kann immer noch nicht glauben, dass jemand Windows-Software schreibt, für die ein reservierter Charakter erforderlich ist.
Mfinni
1
@mfinni: Ich benutze das Caret oft als Escape in einer FOR-Schleife, die Pipe (s) enthält. Es lebe die Charge! :)
Jscott
2
@jscott - lass uns diese Verrücktheit nicht beginnen :) Powershell zur Rettung.
MattB
@mfinni: Es ist an den meisten anderen Orten (wie Linuxland) völlig normal.
user1686
@grawity - deshalb habe ich "Windows-Software" angegeben. Ich weiß, dass man, wenn man Dinge in Shell / Batch oder über Pipes oder andere seltsame Umgebungen erledigt, selbst in Fenstern, vielen Dingen entkommen muss. Aber er sagte nur, dass er cmd verwendet - ich hätte nie gedacht, dass jemand absichtlich etwas schreiben würde, das garantiert nicht mit cmd funktioniert.
Mfinni
1

Sie können auch das Argument zitieren:

foo -option "10->30" file.ext
Joey
quelle
0

Fragen Sie den Anbieter nach dem fooBefehl, wie er funktionieren soll.

mfinni
quelle
−1. Das ist die Shell und nicht das Programm, das etwas mit dem >Hier macht.
Joey
Ich verstehe das - ich sehe einfach keinen kompetenten Anbieter, der Software für Windows mit einer Syntax schreibt , die in der Standard-Shell nicht sofort funktioniert . Ich bin mir nicht sicher, ob -1 erforderlich ist.
Mfinni