Hablando como un novato bash, he estado actualizando mi .bashrc a través de copiar / pegar + github y me he encontrado con el :
comando que nos afecta tanto a mí como a Google. por ej : ${USER_BASH_COMPLETION_DIR:=~/.bash_completion.d}
.
Sin esta declaración originalmente en mi .bashrc, y escribiendo estas cosas en mi terminal ( -> indica salida relevante):
: ${USER_BASH_COMPLETION_DIR=~/.bash_completion.d}
echo $USER_BASH_COMPLETION_DIR
-> /Users/sh/.bash_completion.d
Y:
: ${USER_BASH_COMPLETION_DIR=~/.bash_completion.d}
export USER_BASH_COMPLETION_DIR=asdf
echo $USER_BASH_COMPLETION_DIR
-> asdf
Pero:
: ${USER_BASH_COMPLETION_DIR=~/.bash_completion.d}
export USER_BASH_COMPLETION_DIR=asdf
: ${USER_BASH_COMPLETION_DIR=~/.bash_completion.d}
echo $USER_BASH_COMPLETION_DIR
-> asdf
No lo entiendo!
1) ¿Cómo establece el comando de dos puntos una variable pero no puede sobrescribir un conjunto export
?
2) ¿Cuál es la lógica detrás de usar :
en algunos .bashrc?
Usando Mac 10.6.8
(fuera de contexto incluir la palabra clave dos puntos solo para ayudar a otros como yo que intentaron buscar ese término)