Este é o PID do shell:
nathan@guixlaptop ~ $ $$
bash: 10984: command not found
Eu exporto uma variável de ambiente:
nathan@guixlaptop ~ $ export TESTVAR=test
A variável não é encontrada no ambiente do shell:
nathan@guixlaptop ~ $ cat /proc/10984/environ | grep TESTVAR || echo "fail"
fail
Como faço para que a variável apareça no ambiente?
/proc/.../environ
contém o ambiente inicial do processo :Para ver as alterações, você precisa iniciar um novo shell:
Você não pode alterar o conteúdo mostrado em um shell em execução
environ
, a menos que recorra a manobras invasivas; veja alterar /proc/PID/environ após o início do processo para obter detalhes.Acho que você precisará lidar com as strings separadas por NUL e reiniciar o shell para ver o resultado que está procurando:
Atribuição a @aviro & @stephenkitt pelas simplificações (ver comentários)
Outros exemplos, você pode usar
strings
show proc/$$/environ file.