(1 réponse)
Fermé il y a 4 ans.
J'ai vu cela à la fin d'un script shell génial, mais je ne comprends pas la connexion ici car je pense qu'il est en sous-effectif pour une commande plus longue.
spark ${@:-`cat`}
Cela apparaît à la fin de ce script. Des idées ?
+ Des notes pour quelqu'un qui l'étend dans un segment complet de code, même si c'est plus lent (mieux pour l'explication)
Réponse acceptée :
C'est le premier cas particulier de substitution de paramètres dans man bash :
${parameter:-word}
Utilisez les valeurs par défaut. Siparametern'est pas défini ou nul, le développement dewordest substitué. Sinon, la valeur deparameterest remplacé.
Dans le cas que vous avez mentionné, soit l'utilisateur a fourni des arguments sur la ligne de commande et ils seront utilisés, soit l'utilisateur est invité à les saisir sur l'entrée standard par la suite.