Abrir URL com & em arquivo BAT
Amigos, criei um arquivo BAT para abrir várias páginas e funciona, até aí tudo bem. Problema é que coloquei um link novo, extraído de pesquisa do Google, este link grande tem o caractere & e o sistema interpreta isto como espaço e dá erro. Exemplo:
"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" https://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&ved=0ahUKEwiHsteNornOAhXJi5AKHb7iDUwQFghYMAk&url=http%3A%2F%2Fbr.mozdev.org%2Ffirefox%2Fajuda%2Ftips.html&usg=AFQjCNGMSHbaHzhTwFKmKj1Zz4ODrHN4Aw&bvm=bv.129422649,d.Y2I&cad=rja
O que posso fazer para conseguir abrir o link desta forma, em arquivo BAT?
Solução escolhida
Pelo BAT vc precisará escapar o símbolo % usando %%. Ficaria assim:
"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" "https://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&ved=0ahUKEwiHsteNornOAhXJi5AKHb7iDUwQFghYMAk&url=http%%3A%%2F%%2Fbr.mozdev.org%%2Ffirefox%%2Fajuda%%2Ftips.html&usg=AFQjCNGMSHbaHzhTwFKmKj1Zz4ODrHN4Aw&bvm=bv.129422649,d.Y2I&cad=rja"Ler esta resposta 👍 0
Todas as respostas (13)
Olá Aev,
Você pode tentar escapar o caractere substituindo o & por &
Pode testar?
Zilmar, Obrigado pela ajuda! Acho que você errou na digitação. Sua sugestão é para substituir o & por o que?
Aev27 disse
Zilmar, Obrigado pela ajuda! Acho que você errou na digitação. Sua sugestão é para substituir o & por o que?
Eita! Até digitei certo, mas a formatação pegou o código hehehe Tenta substituir por &
É... não foi desta vez. Tentei também com " e ', antes e depois, mas nada... Veja a imagem abaixo.
Pela imagem o problema é com o caminho do Firefox. Está sem as barras do diretório.
Não Zilmar, ele abro o navegador, mas não acessa o link da página por completo, pára no primeiro espaço ocasionado pelo caracter &. Se eu usar um link simples, como www.google.com.br o BAT funciona direitinho. Por algum motivo as barras não aparecem, mas eu usei o caminho inteiro, como aparece lá na pergunta inicial. Complicado né! :-(
Coloca o endereço entre aspas também! :D Aqui funcionou:
"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" "https://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&ved=0ahUKEwiHsteNornOAhXJi5AKHb7iDUwQFghYMAk&url=http%3A%2F%2Fbr.mozdev.org%2Ffirefox%2Fajuda%2Ftips.html&usg=AFQjCNGMSHbaHzhTwFKmKj1Zz4ODrHN4Aw&bvm=bv.129422649,d.Y2I&cad=rja"
Caramba... eu havia tentando, mas fiz novamente. *Copiei exatamente* o que colocou na mensagem acima, mas nao deu certo... diz:
404. That’s an error.
The requested URL /httpAFFbr.mozdev.orgFfirefoxFajudaFtips.html was not found on this server. That’s all we know.
Para ter certeza que copiei certo, colei diretamente no navegador e abriu...
Cara, isso é muito estranho pq ele ignorou o %2A que representa o caractere : e o %3F que representa o /.
Aqui tá funcionando normalmente. Tenta executar isso através do CMD ao invés do .bat.
Aliás, você poderia colar seu arquivo .bat?
Hummm, colando no CMD funciona! Mas o mesmíssimo comando , direto no .BAT não vai. Segue abaixo link do Dropbox para o meu arquivo, obrigado mesmo pela enorme ajuda!
Solução escolhida
Pelo BAT vc precisará escapar o símbolo % usando %%. Ficaria assim:
"C:\Program Files (x86)\Mozilla Firefox\firefox.exe" "https://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&ved=0ahUKEwiHsteNornOAhXJi5AKHb7iDUwQFghYMAk&url=http%%3A%%2F%%2Fbr.mozdev.org%%2Ffirefox%%2Fajuda%%2Ftips.html&usg=AFQjCNGMSHbaHzhTwFKmKj1Zz4ODrHN4Aw&bvm=bv.129422649,d.Y2I&cad=rja"
Olá Zilmar, bom dia! Resolvi o problema com sua ajuda, obrigado! Não sei a explicação de porque usar dobrado o %, se souber me fale, mas deu certo! Existe outro porém, que é um detalhe contornável e bobo, como eu quero usar exatamente o link que o Google rastreia, exemplo aquele grande que postei no início, feito em pesquisas, o BAT fica com uma linha de comando muito grande e em geral só consigo abrir 30 páginas por cada arquivo BAT. Se eu fosse usar links encurtados, já teste com 100 páginas e abriu em um único BAT.
Olá Aev!
Isso é uma questão de implementação do próprio Windows. Somente um % geralmente indica um parâmetro passado ao script, por isso se usa %% para indicar que não é esse caso.
Quanto aos links grandões, não tenho muita ideia do que poderia ser, mas novamente vai depender da implementação do Windows ):
Podemos marcar sua dúvida como resolvida?