Existem convenções de nomenclatura para variáveis em scripts de shell?

91

A maioria das linguagens tem convenções de nomenclatura para variáveis, o estilo mais comum que vejo em scripts de shell é MY_VARIABLE=foo . Essa é a convenção ou é apenas para variáveis globais? E as variáveis locais para o script?

    
por Garrett Hall 11.07.2012 / 22:45

3 respostas

87

Variáveis de ambiente ou variáveis de shell introduzidas pelo sistema operacional ou scripts de inicialização de shell, etc., geralmente são todas em CAPITALS .

Para evitar que suas próprias variáveis entrem em conflito com essas variáveis, é uma boa prática usar lower case .

    
por 11.07.2012 / 22:53
48

Sim, existem convenções completas de estilo de código para o bash, incluindo nomes de variáveis. Por exemplo, aqui está o Guia de estilo da Shell do Google.

Como resumo para os nomes das variáveis especificamente:

Variable Names: Lower-case, with underscores to separate words. Ex: my_variable_name

Constants and Environment Variable Names: All caps, separated with underscores, declared at the top of the file. Ex: MY_CONSTANT

    
por 17.08.2015 / 06:11
0

Os sublinhados para separar palavras parecem ser o melhor caminho a percorrer.
Eu tenho alguns motivos para preferir o snake_case ao camelCase quando estou livre para escolher:

  1. Flexível: você pode usar letras maiúsculas e minúsculas (por exemplo, MY_CONSTANT e my_variable );
  2. Consistente: os dígitos podem ser separados para tornar o número mais legível (por exemplo, 1_000_000_000 ) e esse recurso é suportado em muitas linguagens de programação;
  3. Comum: comum no ponto em que o regex \w manipula sublinhados como caracteres de palavras e números ( [a-zA-Z0-9_] ).
por 02.09.2018 / 11:46