確認すると、/proc/1/environ
プロセス環境変数のヌルバイトで区切られた文字列が表示されます。1
これらの変数を現在の環境にインポートしたいと思います。見つけることができるショートカットがありますか?
マニュアルproc
ページでは、各環境変数を1行ずつ印刷するのに役立つフラグメントを提供しました(cat /proc/1/environ; echo) | tr '\000' '\n'
。これは内容が正しいことを確認するのに役立ちますが、実際にやるべきことは、これらの変数を現在のbashセッションにソースとして追加することです。
どうすればいいですか?
ベストアンサー1
次のコードは、各環境変数をステートメントに変換し、export
それを正しく引用してシェルに読み込み(LS_COLORS
たとえば、セミコロンを含めることができる)インポートします。
[残念ながら、printf
inは/usr/bin
通常サポートされていないため、%q
組み込みbash
。 ]
. <(xargs -0 bash -c 'printf "export %q\n" "$@"' -- < /proc/nnn/environ)