Linux shell脚本教程:变量基础与环境变量设置

版权申诉
0 下载量 80 浏览量 更新于2024-08-03 收藏 26KB DOCX 举报
“Linux之shell脚本基础详细教程大全—shell脚本基础1-变量” 在Linux操作系统中,shell脚本是一种强大的自动化工具,它允许用户编写一系列命令来执行批量任务。本文主要讲解了shell脚本中的变量概念,包括环境变量、本地变量、位置变量和特定位置变量参数。 **1. 变量** 变量是shell脚本中的核心元素,它们用于存储数据,可以是用户相关的设置,也可以是临时信息。在shell中,所有变量默认被视为字符串。赋值时要注意,等号两侧不应有空格,字符串通常用双引号括起来以防止被空白字符分割,同时保留变量扩展功能。 **2. 分类** - **环境变量**:环境变量对所有子进程都有效,但用户注销后会丢失。它们最好在用户的`.profile`文件中设置,系统管理员则可以在`/etc/profile`中全局设定。设置环境变量使用`$VAR_NAME=value`和`export VAR_NAME`,查看所有环境变量使用`env`,删除则用`unset VAR_NAME`。 - **本地变量**:仅在当前shell会话或脚本中存在,不会传递给子进程。它们在脚本内部定义和使用。 - **位置变量**:这些变量与命令行参数相关,如`$1`, `$2`, ...,用于接收命令行传递的参数。 - **特定位置变量参数**:如`$0`表示脚本的名称,`$#`表示位置参数的总数,`$$`表示当前进程ID。 **3. 常见环境变量** - **CDPATH**: 指定切换目录时查找路径的列表。 - **HOME**: 当前用户的主目录,即家目录。 - **IFS (Internal Field Separator)**: 定义shell读取输入时如何分割单词,通常是空格、制表符和换行符。 - **LOGNAME**: 当前用户的登录名。 - **MAIL, MAILCHECK, MAILPATH**: 与邮件相关,`MAILCHECK`指多久检查一次新邮件。 - **PATH**: 执行命令时搜索的目录列表,用冒号分隔。 - **PS1, PS2**: 提示符,`PS1`是基本命令提示符,`PS2`是二级提示符。 - **SHELL**: 当前用户的shell类型。 - **TERM**: 终端类型。 - **TZ**: 时区设置。 - **EDITOR, PAGER**: 编辑器和分页器的设置。 - **MANPATH**: man手册页的搜索路径。 掌握这些基础的shell脚本变量知识,将有助于编写更高效、更灵活的自动化脚本,实现对Linux系统的自定义管理和任务自动化。通过熟练运用变量,可以更方便地控制脚本的行为,提高工作效率。