Umgebungsvariablen in Linux?
Mir ist aufgefallen, dass ein Programm sich in gdb anders verhält als außerhalb, weil in gdb zwei Umgebungsvariablen genutzt werden. Wir sollen in einer Aufgabe beantworten, mit welchem Pfad man ein beliebiges Programm außerhalb bon GDB aufrufen muss, so dass die Umgebungsvariablen in- und außerhalb von GDB die gleichen sind. Hat da jemand eine Idee?
1 Antwort
kann man das überhaupt so beantworten?
Umgebungsvariablen kann man immer und überall definieren, umdefinieren.
Üblich ist zwar, dass die zentral z.B. in der /etc/profile oder /etc/bash.bashrc gesetzt werden, man kann sie aber mit
export <name>='<neuer-Wert>'
definieren oder umdefinieren.
Umdefinieren funktioniert aber nicht immer so, wie man will, weil sie durch den automatischen Aufruf z.B. beim Start eines Terminals neu gesetzt werden.
GDB kann also durchaus selbst Variablen setzten, die außerhalb nicht oder anders aussehen.
Bleibt wohl nur, innerhalb von GDB den Inhalt zu ermitteln und dann außerhalb selbst so eine Variable zu setzen.