行业资讯

使用 Linux 环境变量+练习

发布时间:2026/7/7 14:28:56
使用 Linux 环境变量+练习 环境变量基础概念定义环境变量是名称 值的键值对用于存储 Shell 会话、系统运行信息程序 / 脚本可直接读取系统标准环境变量统一大写自定义变量建议小写避免冲突。两大分类1.全局环境变量作用范围当前 Shell 所有子 Shell 全部可见、可读取查看命令env / printenv读取单个变量printenv 变量名 或 echo $变量名示例echo $HOME、printenv PWD2.局部环境变量作用范围仅当前创建它的 Shell子 Shell 无法访问查看命令set输出全部变量全局 局部 自定义自动字母排序自定义变量局部变量 全局变量创建局部变量仅当前 shell 生效1.语法规范变量名 值等号两侧不能有空格2.普通字符串namezhangsan3.带空格字符串单引号包裹 msghello world4.特性进入子 Shell 后无法读取退出当前 Shell 直接失效升级为全局变量export 导出1.步骤先定义局部变量 → export 变量名 导出全局2.关键特性子 Shell 可读取父导出的全局变量子 Shell 内修改该变量不会影响父 Shell 原值仅临时生效重启终端 / 系统丢失3. 删除变量 unset语法unset 变量名删除操作不加\(读取变量才加\)效果父 Shell 删除全局变量自身与子 Shell 均无法读取仅在子 Shell 执行 unset父 Shell 变量不受影响系统默认内置环境变量Bourne 通用基础变量HOME 当前用户家目录PWD 当前工作目录CDPATH cd 命令的搜索目录IFS 字段分隔符MAIL 用户邮件文件路径PS1 终端主提示符PS2 换行次提示符Bash 专属扩展变量BASH 当前 bash 程序路径UID 当前用户数字 IDHOSTNAME 主机名LINES 终端可见行数GROUPS 用户所属组数组PATH 可执行程序搜索路径1.作用Shell 执行外部命令时按PATH冒号分隔的目录依次查找程序2.查看echo $PATH目录使用:分隔3.临时追加自定义目录重启失效环境变量持久化登录 Shell 启动文件登录 bash 时会按固定顺序读取环境配置文件永久保存变量需写入对应文件系统全局配置所有用户生效/etc/profile所有用户登录都会加载内部会循环执行 /etc/profile.d/*.sh 目录下所有脚本用户专属配置仅当前用户生效查找优先级从上到下找到即停止读取剩余1.$HOME/.bash_profile2.$HOME/.bash_login3.$HOME/.profile上述文件默认会加载 $HOME/.bashrc修改以上文件后执行 source 文件名 立即生效无需重启终端数组变量特殊环境变量数组定义与读取1.定义数组下标从 0 开始arr(one two three)2.读取单个元素echo ${arr[2]}3.读取全部元素echo ${arr[*]}数组修改与删除1.修改指定下标值arr[2]five2.删除单个下标unset arr[1]仅清空值下标保留3.删除整个数组unset arr练习两种情况都不能查到局部变量因为Shell局部变量作用域仅限定义它的当前Shell进程不会向子进程传递也不能反向传给父进程PS这个很多就只截取一部分系统重启后无法运行