Си setenv глобально
Я полностью понимаю что,вопрос скорее риторический, и что export ENV=value
это builtin команда шела.
Но все-же интересно спросить реально ли вывести env переменную за просторы программы и её наследников? Возможно есть какой нибудь хак как можно это сделать?
Возможно что ситуацию спасет некий плагин/драйвер для shell который сможет получать особую команду от программы?
И да, очень важную вещь забыл. Интересует именно временная замена, а не прописывание в ОС/пользовательские настройки. То-есть при закрытии шела, переменная должна пропадать.
Ps: Использую классический линуксовый c17.
Добавлено спустя
В Windows эту задачу решили способом инъекции. То есть в родителя производиться инъекция DLL, которая меняет environment по усмотрению запущенной программы.
Раз уж сложный вопрос, то может будем плясать от схожих манипуляций?
Во многих статьях ещё ссылаються на gdb
$ sudo gdb -p PROCESSID
(gdb) call putenv("MYVAR=myvalue")
(gdb) detach