¿Cómo escapar del signo> en la línea de comandos de Windows?

8

Por ejemplo, foo -option 10->30 file.ext(esta es una sintaxis real requerida) redirige la salida a un archivo llamado 30. ¿Cómo hago para que cmd entienda que me gustaría pasar el carácter real>? He intentado varias formas de comillas dobles en vano.

MaxVT
fuente

Respuestas:

11

El carácter de escape cmd es ^así:

foo -option 10-^>30 file.ext

debería trabajar para ti

MattB
fuente
Nunca lo habría sabido / adivinado, todavía no puedo creer que alguien esté escribiendo software de Windows que requiere un carácter reservado.
mfinni
1
@mfinni: a menudo uso el símbolo de intercalación como escape en un bucle FOR que contiene tubería (s). ¡Viva el lote! :)
jscott
2
@jscott - no empecemos esa locura :) Powershell al rescate.
MattB
@mfinni: es perfectamente normal en la mayoría de los otros lugares (como Linuxland).
user1686
@grawity: por eso especifiqué "software de Windows". Sé que cuando haces cosas en shell / batch o a través de tuberías u otros entornos extraños, incluso en ventanas, tienes que escapar de muchas cosas. Pero él acaba de decir que está usando cmd: nunca hubiera pensado que alguien escribiría a propósito algo que garantizara que no funcionaría desde cmd.
mfinni
1

También puedes citar el argumento:

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

Pídale al vendedor el foocomando ¿cómo se supone que debe funcionar?

mfinni
fuente
−1. Ese es el shell y no el programa haciendo algo con el >aquí.
Joey
Entiendo eso: simplemente no veo un proveedor competente que escriba software para Windows con sintaxis que no funcione de fábrica en el shell predeterminado. No estoy seguro de que el -1 sea necesario.
mfinni