1. 首页
  2. 主题
  3. Go问与答

请问os.Setenv后为什么下次启动程序就读取不到

gluck · · 3298 次点击
我在程序设置了一个端口os.Setenv("myport", "8080") 下次启动程序就读取 fmt.Println(os.Getenv("myport")) 发现读取出来是"", 为什么呢? 难道没有写入到环境变量?
此时,go程序是shell的子进程,当然就获取到了
#4
更多评论
操作系统的机制就是这样,能读到才会有问题,这样会让进程出问题的,比如我一个进程依赖某个环境变量,另外一个进程随便修改,岂不乱了。这种方式设置的环境变量只会在本进程和子进程有限
#1
原来有范围限制的。只能在当前程序有效
#2

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中