Linux 环境变量

环境变量和局部变量

默认类型

创建的shell变量,默认为局部变量

内部命令export

局部变量转换为环境变量,例如:

1
export proto

局部变量和环境变量

  • shell启动的子进程继承环境变量,不继承局部变量
  • 子进程对环境变量的修改,不影响父进程中同名变量

(环境变量的设置,如PATH,CLASSPATH,LANG,如果必要的话放在~/.bashrc中或/etc/profile中)

系统的环境变量

创建

登录后系统自动创建一些环境变量影响应用程序运行

HOME

用户主目录的路径名

PATH

命令查找路径
与DOS/Windows不同的是,它不首先搜索当前目录
PATH=/bin:/usr/bin:/etc
PATH=.:/bin:/usr/bin:/etc 先搜索当前目录(危险!)
PATH=/bin:/usr/bin:/etc:. 后搜索当前目录(危险!)

TERM:终端类型

◆全屏幕操作的软件(如vi),使用它搜索终端库
(环境变量的赋值对某个应用程序,包括java虚拟机以及其他的系统软件,有什么影响,与这个AP的设计相关,需要查阅相关的手册)

相关命令set/env

内部命令set列出当前所有变量及其值以及函数定义

  • 包括环境变量和局部变量、函数定义
  • set | grep ^fname=

外部命令/bin/env列出环境变量及其值