Ich arbeite an Debian Jessie mit Python 2. Warum kann Pythons environ
Umgebungsvariablen nicht sehen, die in bash sichtbar sind?
Ich setze diese Umgebungsvariablen mit /etc/environment
- nicht sicher, ob das relevant ist:
Ich musste source /etc/environment
ausführen, um bash zu bekommen, um sie zu sehen, was ich für merkwürdig hielt.
UPDATE: printenv SECRET_KEY
erzeugt nichts, also denke ich SECRET_KEY
ist eine Shell, keine Umgebungsvariable.
Sie müssen Umgebungsvariablen für untergeordnete Prozesse exportieren, um sie zu sehen:
%Vor%Demo:
%Vor%Sie können die Einstellung und den Export in einem Schritt kombinieren:
%Vor% Beachten Sie, dass neue Variablen in /etc/environment
nicht automatisch in Ihren vorhandenen Shells angezeigt werden, solange Sie keine neue Anmeldung haben. Für einen GUI-Desktop müssen Sie sich abmelden und erneut anmelden. Für SSH-Sitzungen müssen Sie eine neue SSH-Anmeldung erstellen. Nur dann erhalten Sie einen neuen Prozessbaum mit den vorhandenen Änderungen. Die Verwendung von source /etc/environment
setzt nur 'lokale' Variablen (die Datei ist kein Skript). Siehe Wie lade ich / etc / environment ohne Neustart? auf Super Benutzer.
Tags und Links python bash environment-variables