一、环境中存储的是什么?
0.2种数据类型
1.检查环境
(1)set命令
① 是什么?
② 为什么?
③ 语法格式
set [选项]
'''
功能: 显示 shell 变量 和 环境变量,以及设置shell变量的新变量值。
参数: 。
选项:
-a 标示已修改的变量,以供输出至环境变量。
-b 使被中止的后台程序立刻回报执行状态。
-C 转向所产生的文件无法覆盖已存在的文件。
-d Shell预设会用杂凑表记忆使用过的指令,以加速指令的执行。使用-d参数可取消。
-e 若指令传回值不等于0,则立即退出shell。
-f 取消使用通配符。
-h 自动记录函数的所在位置。
-H : Shell 可利用"!"加<指令编号>的方式来执行history中记录的指令。
-k 指令所给的参数都会被视为此指令的环境变量。
-l 记录for循环的变量名称。
-m 使用监视模式。
-n 只读取指令,而不实际执行。
-p 启动优先顺序模式。
-P 启动-P参数后,执行指令时,会以实际的文件或目录来取代符号连接。
-t 执行完随后的指令,即退出shell。
-u 当执行时使用到未定义过的变量,则显示错误信息。
-v 显示shell所读取的输入值。
-x 执行指令后,会先显示该指令及所下的参数。
+<参数> 取消某个set曾启动的参数。
返回值: shell 变量 和 环境变量。
'''
④ 示例
Ⅰ.不带选项或参数
set
(2)printenv命令
① 语法格式
printenv [参数] [Name]
'''
功能: 显示环境变量。
参数:
① Name : 可选参数,若指定 Name 参数,系统仅打印**指定Name的环境变量的值**。
若未指定 Name 参数,则显示**所有变量的名称和值**,每行显示一个 Name =Value 序列。
选项:
① --null: 以空字符而非新行符结束每一输出行。
② --help: 显示此帮助信息并退出。
③ --version: 显示版本信息并退出。
返回值: 查看环境变量,以及当前的shell,和其它一些常见的配置。
'''
② 示例
Ⅰ.显示所有环境变量
printenv
Ⅱ .显示环境变量LANG的值
printenv LANG
Ⅲ . 要查找 MAILMSG 环境变量当前的设置
printenv USER
Ⅳ.显示环境变量 LANG 的值并以空字符而非新行符结束每一输出行
printenv --null LANG
Ⅴ. 显示此帮助信息并退出
printenv --help
Ⅵ.显示版本信息并退出
printenv --version
(3)小技巧
① printenv
printenv | less
② set
set | less
③ echo查看单个变量的值
echo $HOME
(4)set与printenv的区别
alias
2.一些有趣的变量
变量 | 说明 |
---|---|
DISPLAY | 运行图形界面环境时界面的名称。通常为 :O ,表示由 X 服务器生成的第一个界面。 |
EDITOR | 用于文本编辑的程序名称。 |
SHELL | 本机 shell 名称。 |
HOME | 本机主目录的路径名。 |
LANG | 定义了本机语言的字符集和排序规则。 |
OLD_PWD | 先前的工作目录。 |
PAGER | 用于分页输出的程序名称。通常设置为 /usr/bin/less 。 |
PATH | 以冒号分隔的一个目录列表。当用户输入一个可执行程序的名称时,会查找该目录列表。 |
PS1 | 提示符字符串 1。定义了本机 shell 系统提示符的内容。在后面我们会学到,可以灵活地自定义该变量。 |
PWD | 当前工作目录。 |
TERM | 终端类型的名称。类 UNIX 系统支持很多种终端协议;此变量设定了本机终端模拟器使用的协议。 |
TZ | 用于指定本机所处的时区。大多数类 UNIX 系统以协调世界时(UTC)来维护计算机的内部时钟,而显示的本地时间是根据本变量确定的时差计算出来的。 |
USER | 用户名。 |