“export $variable” 或 “export variable” 哪个正确 ?

参考回答

export variable 是正确的用法,export $variable 是错误的。

详细讲解与拓展

  1. export variable
    • 正确的语法。这个命令将变量 variable 导出为环境变量,使其在当前 Shell 会话的子进程中可用。
    • 这意味着任何由当前 Shell 启动的进程(包括子 Shell 或其他程序)都可以访问到 variable 的值。

    示例:

    variable="Hello"
    export variable
    echo variable  # 输出:Hello
    
    # 在子进程中访问该环境变量
    bash -c 'echovariable'  # 输出:Hello
    
    Bash
  2. export $variable
    • 错误的语法。这里的 $variable 被视为对 variable 的值进行扩展,然后将其作为变量名来进行导出。实际上,这会导致错误,除非 variable 存储的是一个合法的变量名(且存在)。

    错误的示例:

    variable="myvar"
    export $variable  # 错误的用法,会报错,因为尝试导出一个叫 "myvar" 的环境变量
    
    Bash

    如果 variable 的值是一个合法的变量名,如 myvar,这时 Shell 会尝试执行 export myvar,但是这个用法是非常少见且容易出错。

总结

  • export variable:正确的用法,将变量 variable 导出为环境变量。
  • export $variable:错误的用法,应该避免这种写法。

发表评论

后才能评论