O que é um bom mnemônico para shell double vs. single quotes?

43

Não faço scripts suficientes para lembrar, sem olhar para cima, se aspas simples ou duplas resultam na substituição de uma variável Unix.

Eu definitivamente entendo o que está acontecendo. Minha pergunta é: alguém tem um truque de memória para fazer a regra de cotação correta ficar na minha cabeça?

Dave Potts
fonte
2
Use rccomo shell, então você tem apenas um tipo de aspas ( "é um caractere comum em rcque as únicas aspas são aspas simples e a barra invertida é usada apenas para continuação de linha (não dentro de aspas simples)). Ele também possui uma sintaxe e um design muito mais enxutos, limpos, melhores e mais intuitivos do que os shell do tipo Korn, como o bash.
Stéphane Chazelas
1
Aprenda Perl. Então você só precisa memorizar que o shell se comporta de maneira semelhante.
N 27rd

Respostas:

75

Únicas citações são simples citações, com um único padrão: cada personagem é literal.
As aspas duplas têm um padrão duplo : alguns caracteres são literais, outros ainda são interpretados, a menos que haja uma barra invertida antes deles.

As aspas simples funcionam sozinhas: a barra invertida dentro das aspas simples não é especial.
As aspas duplas são combinadas com a barra invertida: a barra invertida dentro das aspas duplas torna o próximo caractere não especial.

Gilles 'SO- parar de ser mau'
fonte
7
Isso é bastante poético. Com um bom editor (no sentido literário), poderíamos fazer um livro infantil com isso. "Se você ensina uma cobra a escrever"
glenn jackman 25/10
7
Eu tenho tentado transformar aspas simples são simples, com um único padrão em um poema no estilo do Dr. Seuss por vinte minutos e falhando miseravelmente.
Ti Strga
6
As aspas simples são de uso único, e lit'rally repetição / aspas duplas são mais detalhado, um feito paramat'rising
DopeGhoti
@glennjackman Um livro de colorir FORTRAN
Muzer 27/10
5

"Dobro, trabalho e trabalho duplos;
dólares queimam, e as cotações em excesso borbulham."

O solteiro, por outro lado, é inofensivo.


fonte
4

Aspas duplas ( ") são aspas fracas - você precisa de duas delas, então elas vêm em pares, e as variáveis ​​passam por elas, apesar de seus números.

Aspas simples ( ') são aspas fortes - elas são isoladas e as variáveis ​​não são correspondentes.

DopeGhoti
fonte
2

As aspas duplas dobram os
parâmetros de expansão divertidos, um por um.

gboffi
fonte
1

Aspas duplas ( ") não significam exatamente o que diz, por exemplo, uma ferramenta que diz "quality" equipmentser provavelmente o oposto.

Aspas simples ( ') são aspas fortes, o que está entre elas é exatamente o que parece.

Pelle
fonte
1

Singular no propósito são eles
Quotations que são única.

Trate literalmente os caracteres dentro
Não importa como eles se misturam.

(É apenas uma regra pequena que você deve conhecer
Citação única dentro? Não, não!)


Existem aquelas aspas que são duplas
Dentro das quais alguns caracteres podem ser um problema.
Dólar, back-ticks e back-slash
São tratados especialmente por Bash
Escaping, no entanto, estourará essa bolha.

Camada B
fonte
0

Um: inverno, como é
Dois: verão, transformações
Proibir ou permitir

drl
fonte