Ao inserir um URL de direções do Google Maps na linha de comando (para abrir com o navegador chromium via Terminal), existe um e comercial ( &
) no URL, no entanto, o terminal o interrompe por causa do material Unix ser material Unix. Existe algo que eu possa digitar no terminal que, quando o comando realmente for executado, ele será tratado como um e comercial?
Will; amp; trabalhos?
command-line
bash
Leron
fonte
fonte
As cotações irão corrigir isso, mas você também pode escapar das coisas com uma barra invertida:
Não dizendo que isso é melhor, por qualquer meio, é apenas mais uma opção para situações como essa.
fonte
Na verdade, não importa nesse caso, mas há uma diferença entre aspas simples e aspas duplas.
As aspas duplas substituem caracteres especiais como '$' e aspas, enquanto as aspas simples tratam tudo literalmente, exceto a aspas simples de fechamento.
Ambos agruparão o texto, o que faz com que o cromo o trate de um único argumento, e caracteres como "; # &" não têm significado especial nesse contexto.
Isso mostra o uso de '\' para escapar de aspas duplas entre aspas duplas e uma barra invertida:
Com aspas simples, nada muda:
Sem as aspas, o '&' o divide em dois comandos:
Geralmente, ao lidar com um tipo de citação, você pode simplesmente envolvê-lo no outro tipo, mas pode ter problemas com isso:
As aspas simples não são substituídas, mas o '$' é. Porém, a seguinte sintaxe funciona:
fonte