一、shell变量
1、设置shell变量:可以使用这些变量来帮助运行命令或修改shell的行为,还可以将shell变量导出为环境变量。
2、set命令:列出当前设置的所有shell变量。
set | less
3、为变量分配值:将值分配给shell变量,变量名称可包括大小写字母、数字和下划线字符。
COUNT=40
first_name=John
4、使用变量扩展检索值:在变量名称前加上美元符号$,使用echo命令可显示扩展后的命令行。
二、使用环境变量配置程序
1、export命令:将shell中的任何变量变为环境变量导出。
EDITOR=vim
export EDITOR
2、env命令:列出特定shell的所有环境变量,显示环境变量。
(shell自动设置的环境变量和shell变量具有使用全部大写字符的名称,如果要设置自己的便利,则使用小写字符避免冲突)
3、EDITOR环境变量可以指定默认文本编辑器。
export EDITOR=nano
4、unset命令:完全取消设置和取消导出变量。
5、export -n命令:取消导出变量但不取消设置它 。
6、通过 shell 环境变量查看当前用户主目录、系统字符集和登录用户名称:
(1)当前用户主目录:echo $HOME
(2)系统字符集:echo $LANG
(3)登录用户名称:echo $USER
三、自动设置变量:
如果希望shell启动时自动设置shell或环境变量,可以编辑Bash启动脚本,运行的脚本取决于shell的启动方式。
1、交互式shell 模式:shell 等待用户的输入,并且执行用户提交的命令。这种模式被称作交互 式,在这种模式下,shell 与用户进行交互。
2、非交互式shell模式:在这种模式 下,shell 并不与用户进行交互,而是读取存放在文件中的有关命令,并且执行这些命令。当读到文件的结尾时,shell 也就立马终止。
3、登录 shell:需要输入用户名及密码登录的shell,如 shell 登录、ssh 登录、su - username。
4、非登录 shell:不需要输入密码。
四、三个重要配置文件:
1、/etc/profile:此文件为系统的每个用户设罝环境信息,当用户第一次登录时,该文件即被执行,该文件中设置的环境变量是全局的,可以作用于所有用户。
2、/etc/bashrc:为每一个运行 bash shell 的用户执行此文件,当 bash shell 被打开时,该文件被读取,即每打开一个新的终端,都会执行 bashrc。
3、~/.bash_profile:每个用户都可以使用该文件输入专用于自己使用的 shell 信息,当用户登录时,该文件仅执行一次,默认情况下,该文件会设置一些环境变量,执行用户的“.bashrc” 文件,在这里需要注意“.bash_ profile” 与“.bashrc”的区别: “bash_ profile”只在会话开始时被读取一次,而”.bashrc”则在每次打开新的终端时,均要被读取。