Como escapar do sinal> na linha de comando do Windows?

8

Por exemplo, foo -option 10->30 file.ext(esta é uma sintaxe real necessária) redireciona a saída para um arquivo chamado 30. Como faço para o cmd entender que gostaria de passar o caractere> real? Eu tentei várias formas de aspas duplas sem sucesso.

MaxVT
fonte

Respostas:

11

O caractere de escape cmd é ^assim:

foo -option 10-^>30 file.ext

deve funcionar para você

MattB
fonte
Eu nunca saberia / adivinhei isso - ainda não consigo acreditar que alguém esteja escrevendo um software Windows, que requer um caractere reservado.
mfinni
11
@finfin: Costumo usar o cursor como escape em um loop FOR contendo pipe (s). Vida longa ao lote! :)
jscott
2
@jscott - não vamos começar essa loucura :) PowerShell para o resgate.
MattB
@finfin: É perfeitamente normal na maioria dos outros lugares (como Linuxland).
user1686
@rawity - é por isso que eu especifiquei "software windows". Eu sei que quando você está fazendo coisas com casca / lote ou através de tubos ou outros ambientes esquisitos, mesmo nas janelas, você precisa escapar de muitas coisas. Mas ele apenas disse que está usando o cmd - eu nunca pensei que alguém escrevesse propositalmente algo que garantisse que não funcionaria com o cmd.
mfinni
1

Você também pode citar o argumento:

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

Peça ao fornecedor o foocomando como ele deve funcionar?

mfinni
fonte
-1. Esse é o shell e não o programa que está fazendo algo com o >aqui.
Joey
Entendo isso - simplesmente não vejo um fornecedor competente escrevendo um software para Windows com sintaxe que não funcione imediatamente no shell padrão. Não tenho certeza se o -1 é necessário.
mfinni