Als Bash-Neuling habe ich mein .bashrc über Kopieren / Einfügen + Github aktualisiert und bin auf den :
Befehl gestoßen , der mich und Google überfordert . zb : ${USER_BASH_COMPLETION_DIR:=~/.bash_completion.d}
.
Ohne diese Anweisung, die ursprünglich in meiner .bashrc-Datei enthalten war und dieses Zeug in mein Terminal eingibt ( -> zeigt relevante Ausgabe an):
: ${USER_BASH_COMPLETION_DIR=~/.bash_completion.d}
echo $USER_BASH_COMPLETION_DIR
-> /Users/sh/.bash_completion.d
Und:
: ${USER_BASH_COMPLETION_DIR=~/.bash_completion.d}
export USER_BASH_COMPLETION_DIR=asdf
echo $USER_BASH_COMPLETION_DIR
-> asdf
Aber:
: ${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
Ich verstehe es nicht!
1) Wie setzt der Doppelpunktbefehl eine Variable, kann aber keine Variable überschreiben, die mit festgelegt wurde export
?
2) Welche Logik steckt hinter der Verwendung von :
.bashrc?
Unter Mac 10.6.8
(Außerhalb des Kontexts enthalten Sie das Schlüsselwort Doppelpunkt, nur um anderen wie mir zu helfen, die versucht haben, nach diesem Begriff zu suchen.)