1
heyjei 2022-05-07 16:32:03 +08:00
https://stackoverflow.com/questions/205064/is-there-a-way-to-change-the-environment-variables-of-another-process-in-unix
(gdb) attach process_id (gdb) call putenv ("env_var_name=env_var_value") (gdb) detach |
2
weegc 2022-05-07 16:57:43 +08:00
AA 的值不要缓存, 每次读取都是最新的环境变量值, 就不用重启进程
有利有弊 |
3
xiaoyanbot OP 了解了
|
4
xiaoyanbot OP @weegc 请问怎么每次读取最新的值?
|
5
ysc3839 2022-05-07 17:03:58 +08:00
用 IPC 之类的方法把新值传递给已经启动的进程。
不过我怀疑这是个 X-Y Problem https://coolshell.cn/articles/10804.html 建议直接说原始需求。 |
6
reneiw 2022-05-07 17:22:57 +08:00
环境变量在你命令行启动的一瞬间就会获取的,建议丢 redis 去取
|
7
keepeye 2022-05-07 17:25:37 +08:00
干脆你就别用环境变量了吧,单独弄个 ini 文件,每次获取的时候对比文件修改时间,有更新就重新读取
|
8
weegc 2022-05-07 18:07:40 +08:00
@xiaoyanbot getenv('AA') 不行吗?
|