使用环境变量
shell 使用环境变量储存信息,例如当前用户的名称、主机名称以及任何命令的默认路径。在 shell 上下文中执行的所有命令都会继承环境变量,部分命令取决于环境变量。
您可以创建环境变量并用来控制命令行为,无需修改命令本身。例如,您可以使用环境变量来让命令将调试信息打印到控制台。
若要设置环境变量的值,请使用正确的 shell 命令来为变量名称赋值。例如,若要将变量 PATH 的值设为 /bin:/sbin:/user/bin:/user/sbin:/system/Library/
,您需要在“终端”窗口中输入以下命令:
$ PATH=/bin:/sbin:/user/bin:/user/sbin:/system/Library/ export PATH
若要查看所有环境变量,请输入:
$ env
当您从 shell 启动应用时,该应用将继承大部分的 shell 环境,包括导出的环境变量。这种形式的继承有利于进行应用的动态配置。例如,您的应用可以检查某个环境变量的存在(或值),并据此更改其行为。
不同的 shell 支持不同的导出环境变量的语义。有关信息,请参阅您首选 shell 的 man 页面。
尽管 shell 的子进程会继承该 shell 的环境,但各个 shell 是独立的执行上下文,它们不会相互共享环境信息。您在一个“终端”窗口设置变量不会影响其他“终端”窗口的设置。
关闭“终端”窗口后,此窗口中所设定的变量将会丢失。如果想要某个变量的值保留在多个会话和所有“终端”窗口中,您必须在 shell 启动脚本中进行设定。有关修改 bash shell 启动脚本 (~bashrc) 以在多个会话中保留变量和其他设置的信息,请参阅 bash
man 页面的“Invocation”章节。