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.

Respostas:


11

O caractere de escape cmd é ^assim:

foo -option 10-^>30 file.ext

deve funcionar para você


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

0

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


-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
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.