2016-07-20 4 views
0

Ich habe einige Bash-Skripte geerbt, und ich sehe diesen Einzeiler

ENV_NAME=${1:-develop} 

Kann mir jemand sagen, was es tut? Ich weiß nicht einmal, wie ich das googlen soll.

Danke!

+0

Öffnen Sie 'Mann bash' und suchen Sie nach': -'. (In anderen Worten, führen Sie 'man bash' und geben' /: - ') – John1024

+0

Wenn Sie google' site: stackoverflow.com Bash Doppelpunkt Strich 'finden Sie ** mehrere ** Instanzen dieser Frage. –

+0

http://wiki.bash-hackers.org/syntax/pe ist auch eine großartige Ressource –

Antwort

0

Das Konstrukt ist ein so genanntes parameter expansion. Es wird auf einen Standardwert erweitert, wenn die Variable selbst nicht oder null ist. Die semantische ist

${variable:-default value} 

$1 der erste Parameter an das Skript übergeben wird. Wenn der Parameter weggelassen wird, wird ENV_NAME standardmäßig auf "develop" gesetzt.