como canalizar a saída com aspas duplas

1

eu quero canalizar uma URL para o mplayer.
mas não consegue ver como encapsular a 1ª saída com aspas duplas (caso contrário, erros no mplayer)

isso está errado

youtube-dl.exe -g http://www.youtube.com/watch?v=sNPVt3cMkT0 | mplayer

relevante?
link

outra opção é escrever / ler a partir do arquivo temporário.

    
por yoshco 22.09.2013 / 10:08

2 respostas

1

Você não quer canalizar o resultado para o mplayer, em vez disso você quer fornecer o resultado como um argumento, assim:

for /f "delims=" %A in ('youtube-dl.exe -g "http://www.youtube.com/watch?v=sNPVt3cMkT0"') do @mplayer "%%A"

Se usado dentro de um arquivo de lote, dobrar todas as porcentagens, então %A se torna %%A .

    
por 23.09.2013 / 12:47
0

Eu pesquisei por uma página de manual mplayer ; pelo que eu posso dizer, são os URIs como argumentos. Como mencionei nos comentários, você precisa citar o URI do YouTube. Você também precisará citar a substituição de comandos, de modo que o shell também não tente expandir isso para nomes de arquivos. Você quer algo assim:

mplayer "$(youtube-dl --get-url 'https://www.youtube.com/watch?v=sNPVt3cMkT0')"

( --get-url é equivalente a -g ; alterei para maior clareza para quem não está familiarizado com youtube-dl .)

    
por 23.09.2013 / 06:03