Linux的shell环境

shell 在 shell 会话中维护着大量的信息,这些信息称为 (shell) 环境。 存储在
shell 环境中的数据被程序用来确定配置属性。然而大多数程序用配置文件来存储程序设置, 某些程序也会查找存储在shell 环境中的数值来调整他们的行为,所以可以用shell环境来定制shell经历.
1.shell存放两种基本类型的数据, 环境变量 和 shell变量 (由bash存放的少量数据),
2.通过set(bash内部命令) 和 printenv 查看变量, set 显示shell变量和环境变量两者,printenv只显示环境变量

printenv USER // 输出特定的变量的数据

set命令不加参数和选项的时候输出变量,并且按照字母顺序排序,

alias 来查看是别名的变量, set和printenv不可用

3.登录系统时,启动bash程序,读取一系列为启动文件的配置脚本,定义了可以供所有用户共享的shell环境,然后读取位于自己用户家目录中的启动文件,这些启动文件定义了用户个人的shell环境.(精确的启动顺序依赖于要运行的shell会话类型,和以上的不一定一样),shell会话类型:登录shell会话,非登录shell会话

表12-2: 登录 shell 会话的启动文件

文件 内容
/etc/profile 应用于所有用户的全局配置脚本。
~/.bash_profile 用户私人的启动文件。可以用来扩展或重写全局配置脚本中的设置。
~/.bash_login 如果文件 ~/.bash_profile 没有找到,bash 会尝试读取这个脚本。
~/.profile 如果文件 ~/.bash_profile 或文件 ~/.bash_login 都没有找到,bash 会试图读取这个文件。这是基于 Debian 发行版的默认设置,比方说 Ubuntu。

表12-3: 非登录 shell 会话的启动文件

文件 内容
/etc/bash.bashrc 应用于所有用户的全局配置文件。
~/.bashrc 用户私有的启动文件。可以用来扩展或重写全局配置脚本中的设置。

PS: 如何在变量后面加内容

PATH = $PATH:$HOME/bin  //会在后面加一个:$HOME/bin  冒号也会加进去

按照通常的规则,添加目录到你的 PATH 变量或者是定义额外的环境变量,要把这些更改放置到.bash_profile 文件中(或者其替代文件中,根据不同的发行版。例如,Ubuntu 使用 .profile 文件)。 对于其它的更改,要放到 .bashrc 文件中。
在更改前可以做一个备份,

当我们更改了相关的配置文件,需要激活

source .bashrc

猜你喜欢

转载自blog.csdn.net/Pruett/article/details/80654839