bash的配置文件
bash的配置文件用来配置bash的使用环境,在系统中保存这诸多事先定义好的变量 bash的环境变量常见的有: PATH:命令搜索路径 HISTFILE:命令历史的保存位置 SHELL:当前用户使用的 HOME:当前用户的家目录
变量的类型:
本地变量:只对当前shell进程有效,对其子shell以及其它shell都无效; 定义变量: [set]Var_Name="Value" 引用变量: ${Var_Name} 撤销变量: unset Var_Name
局部变量:仅对局部代码生效 local Var_Name="Value"
环境变量:对当shell进程及其子shell有效; export Var_Name="Value"
位置变量: $1, ..., $n ./first.sh 2 8
特殊变量: $0: 脚本名称自身 $?: 上一条命令的执行状态; 状态用数字来表示:0-255; 0: 成功 1-255: 失败 (1、2、127 是系统预留的) $$ $! $# $*
变量的命名要求: 只能使用数字、字母和下划线组成; 不能以数字开头; 不能使用程序中的关键字; 见名知义;totalWeight
查看系统上的变量:
set :显示当前Bash上所有变量 显示所有环境变量:export, env, printenv
环境配置文件分为两类:
profile类:为交互式登录的用户提供配置 /etc/profile:全局 /etc/profile.d/*.sh:全局 ~/.bash_profile:个人配置,仅对当前用户有效 功用: 设定环境变量 运行命令或脚本
bashrc类:非交互工登录用户提供配置 /etc/bashrc: 全局 ~/.bashrc: 个人配置 功用: 设定本地变量 定义命令别名
SHELL的类型: 交互式登录shell: 直接通过终端输入用户信息登录系统 su - USERNAME su -l USERNAME 非交互式登录shell: su USERNAME 图形终端下打开命令窗口 自动执行的shell脚本 交互式登录shell,配置文件及次序: /etc/profile--> /etc/profile.d/*.sh --> ~/.bash_profile --> ~/.bashrc -->/etc/bashrc 非交互式登录shell,配置文件及次序: ~/.bashrc--> /etc/basrc --> /etc/profile.d/*.sh 新增配置的生效方式: 1、重新登录 2、通知shell重读配置文件的命令: source (.) . FILE 实例: //追加PAHT变量下的路径
|