Dalam skrip bash saya mencoba untuk menjaga variabel saya lokal ke fungsi di mana pun saya bisa dan kemudian melewati apa yang saya butuhkan dari fungsi seperti di bawah ini
#!/bin/bash
function FUNCTION() {
local LOCAL="value"
echo "$LOCAL" # return this variable
}
GLOBAL=$(FUNCTION)
echo "$GLOBAL"
Tetapi apakah mungkin untuk melakukan ini sambil memasukkan gema fungsi itu sendiri sehingga jika fungsi memiliki pesan sendiri untuk dihasilkan, saya tidak harus menangkapnya dalam sebuah variabel
#!/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()
sintaks lama, non-POSIX ? Anda bisa mendapatkan kompatibilitas POSIX yang lebih baik dengan 9 sedikit penekanan tombol.