ulidtko
06.03.2012 12:14
Я нашёл реализацию вчерашней идеи про переменные, общие для нескольких процессов. Правда она не на баше, а на перле: http://search.cpan.org/~bsugars/IPC-Shar...
Okay.
ебануться. багов от global shared mutable state в пределах одного процесса уже мало, хочется в нескольких процессах?
да.
[ -d /dev/shm/bash_shared ] || mkdir /dev/shm/bash_shared
get_shared () {
cat "/dev/shm/bash_shared/$1"
}
set_shared () {
echo "$2" > "/dev/shm/bash_shared/$1"
}
ну это-то понятно. Я хотел именно синтаксической прозрачности, чтобы писать
$VARNAME="shared value"
echo $VARNAME
вместо
set_shared VARNAME "shared value"
echo $(get_shared VARNAME)
тебе в любом случае нужно отличать глобальные переменные от обычных.
Так-то можно наебать парсер баша, но это ненужная трата сил.
ну у нас же ШВАБОДКА, можно ультимативно и пропатчить баш, добавив какой-нибудь новый тип переменных в declare. Но мне для недоскрипта это делать лень, естественно.