[Fli4l_dev] bleibt rc.cfg stabil?
Thomas Grunenberg
tho_gru at gmx.de
Di Feb 16 06:13:45 CET 2016
Am 16.02.2016 um 05:41 schrieb Thomas Grunenberg:
> Am 15.02.2016 um 22:16 schrieb Christoph Schulz:
>> Hallo!
>>
>> Thomas Grunenberg schrieb:
>>
>>> Könntest Du nicht einfach die sh (der busy box) die rc.cfg in
>>> Umgebungsvariablen einlesen lassen und dann perl als Unterprozesse der
>>> sh starten. Dann müsste das perl-Skript doch mit %ENV auf alle geparsten
>>> Umgebungsvariablen zugreifen können (siehe
>>> https://www.cs.cf.ac.uk/Dave/PERL/node106.html).
>>
>> So ganz klappt das nicht, weil all diese Variablen exportiert werden
>> müssen,
>> denn sonst sieht der Perl-Prozess sie nicht. Und die export-Direktiven da
>> dranzukriegen ist nicht möglich, ohne dass man genau weiß, *welche*
>> Variablen definiert sind. Was also zum Henne-Ei-Problem wird, denn
>> wenn ich
>> weiß, welche Variablen gesetzt werden, dann weiß ich auch, wo die
>> Definitionen anfangen und wo sie enden. Am vernünftige Parsen der
>> Variablen
>> kommt man also nicht vorbei, zumindest nicht wenn man mehrzeilige
>> Variablendefinitionen nicht aus irgendwelchen Gründen ausschließen kann.
>>
>>
>> Viele Grüße,
>>
> Moin, moin,
>
> Christoph, Du hast Recht: Die Variablen stehen nicht dem Unterprozess
> zur Verfügung, da das *export* fehlt...
>
> Das ließe sich doch mit folgenden Zeilen beheben:
> set | grep -o '^.*=' | cut -d = -f 1 |
> while read xxx_var; do export ${xxx_var}; done
>
> Gruß
> Thomas
Moin, moin,
Ich hatte gerade folgende Idee:
##################################################################
# alle Umgebungsvariablen (automatisch) exportieren
set -a
# fli4l Konfiguration einlesen (und gleich exportieren, s.o.)
. /etc/rc.cfg
# weitere Befehle, die alle Variablen
# aus dem Environment lesen können
##################################################################
Das funktioniert so unter fli4l 3.10.4 und sollte auch für alle neueren
fli4l Version gehen, so lange der set Befehl nicht aus der BusyBox
heraus fliegt.
Gruß
Thomas
Mehr Informationen über die Mailingliste Fli4l_dev