#1315·direnv

未设置的 bash 变量没有按预期工作

作者: trodemaster创建于 2024年8月22日更新于 2026年8月10日
标签Bug

** 描述错误** 我想你可以把 " unset " 命令列入crainnv配置,如果变量存在,它就会清晰可见。 https://direnv.net/man/direnv.html#usage (中文(简体) ). 我看到错误阻止了prinv继续 当我在.env配置文件中放出未设定的行。 " 出口 " 线路如果不包括 " 未定 " 线路,将按预期运作。

** 废除**

$ mkdir ~/ scratch/ direnvtest 美元 页面存档备份,存于互联网档案馆

$ 回声“ unset FOO / scratch/ direnvtest/.env ”

CD ~/ scratch/direnvtest (美元)
prinv:错误/用户/blake/scratch/direnvtest/.env被屏蔽. 运行“ direnv 允许” 核准其内容

$ prinv 允许
prinv: 错误无效行: 未设置 FOO
prinv: 导出   PC 服务 NAME

** 预期行为** 当.env文件中的 " unset FOO " 一行存在时,如果变量存在,则将取消该变量。 在我的试验案例中,`FOO'并不存在。

** 环境**

  • OS:macOS 14.6.1 23G93臂64
  • 壳牌:GNU bash,5.2.26(1)-放行(arch64-apple-darwin23.2.0)版本.
  • 第2.34.0和2.33.0号版本

** 其他情况** 希望我没有错过一些基本的东西...