In Bash-Skripten versuche ich, meine Variablen für Funktionen lokal zu halten, wo immer ich kann, und dann das, was ich brauche, aus Funktionen wie unten zu übergeben
#!/bin/bash
function FUNCTION() {
local LOCAL="value"
echo "$LOCAL" # return this variable
}
GLOBAL=$(FUNCTION)
echo "$GLOBAL"
Aber ist es möglich, dies zu tun, während die eigenen Echos der Funktion eingeschlossen werden, so dass ich sie nicht in einer Variablen abfangen muss, wenn die Funktion ihre eigenen Nachrichten zur Ausgabe hat
#!/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()
Syntax? Sie können eine bessere POSIX-Kompatibilität mit 9 weniger Tastenanschlägen erzielen.