Torna todas as variáveis readonly e local por padrão no bash

0

Ao criar scripts bash , uso muito readonly , local e até readonly local ao criar variáveis. Isso pode preencher rapidamente o seu script e torna o código menos legível (e repetitivo). Existe uma maneira (como uma set bandeira no topo do script, ou algo assim) para fazer todas as variáveis readonly e / ou local por padrão?

Com ele, a ressalva é obrigatória para trabalhar com 3.2.57(1)-release , já que estou no macOS.

Tenho certeza de que isso não é possível, mas quero ter certeza.

Por favor, não responda "drop bash e use uma linguagem de script adequada". Eu uso outras linguagens de script também. Os scripts bash têm o seu lugar e eu gosto de codificá-los.

    
por user137369 04.04.2017 / 01:42

1 resposta

0

Usando a função declare , você pode tornar suas variáveis somente leitura. Quando usado em uma função declare torna a variável local.

A sintaxe declare é esta:

declare arg VARIABLE=value

Para tornar uma variável somente leitura, use o argumento -r :

declare -r num=12

Mais pode ser encontrado aqui: link

Não tenho certeza se isso é exatamente o que você está procurando, mas acho que é o melhor que você vai conseguir com o BASH

    
por 06.04.2017 / 15:48