No manual do Bash, está escrito sobre a expansão til:
Cada atribuição de variável é verificada em busca de prefixos de til sem aspas imediatamente após um ':' ou o primeiro '='.
Leia o manual do Bash sobre expansão de til.
Presumi que o sinal : ao atribuir uma variável está relacionado à expansão de parâmetros e instruí um dos AIs populares a encontrar exemplos que satisfaçam as condições definidas no manual do Bash. O resumo de sua resposta é o seguinte:
- Não há um exemplo funcional válido com o til imediatamente após o
:
sem caracteres adicionais.
O til é expandido em atribuições de variáveis quando ocorre após dois pontos para que
PATH
variáveis do tipo - sejam definidas assim:Uma “
PATH
variável -like” é uma variável que contém:
campos delimitados por -. No caso daPATH
variável em si, esses campos são nomes de caminho de diretório.Se o til fosse expandido somente após o primeiro sinal de igual, então o acima seria definido
PATH
como um valor terminando na substring literal:~/bin
em vez de em:/home/myself/bin
(dado que o diretório home do usuário era/home/myself
). Isso potencialmente resultaria em problemas para localizar executáveis, já que a expansão de til não é realizada emPATH
pesquisas.A continuação do parágrafo que você cita do Manual de Referência do Bash menciona isto:
A expansão de parâmetros é uma etapa de processamento separada e ocorre após a expansão de til.