Dans les scripts bash, j'essaie de garder mes variables locales aux fonctions partout où je peux, puis de passer ce dont j'ai besoin à partir de fonctions comme ci-dessous
#!/bin/bash
function FUNCTION() {
local LOCAL="value"
echo "$LOCAL" # return this variable
}
GLOBAL=$(FUNCTION)
echo "$GLOBAL"
Mais est-il possible de le faire en incluant les propres échos de la fonction de sorte que si la fonction a ses propres messages à produire, je n'ai pas à les attraper dans une variable
#!/bin/bash
function FUNCTION() {
local LOCAL="value"
echo "$LOCAL" # return this variable
echo "This function is done now" # do not return this variable
}
GLOBAL=$(FUNCTION)
echo "$GLOBAL" # should only echo 'value'
function foo()
syntaxe non POSIX ? Vous pouvez obtenir une meilleure compatibilité POSIX avec 9 raccourcis clavier en moins.