Linux Bash4种变量
1.什么是变量:
变量是计算内存的单元,其中存放的值可以改变,当Shell脚本需要保存一些信息时,如一个文件名或是一个数字,就把它存放在一个变量中。每个变量
有一个名字,所以很容易引用它。使用变量可以保存有用的信息,是系统获知用户相关设置,变量也可以用于保存暂时信息
2.变量规则:
(1)变量名称可以由字母、数字、下划线组成,但是不能以数字开头,比如 "2fdfd"这种变量是无效的
(2)在Bash中,变量的默认类型都是字符串类型,如果进行数值运算,则必须指定变量为数值类型
(3)变量用等号连接值,等号左右两侧不能有空格
(4)变量值如果有空格,需要用单引号或双引号包括
(5)在变量的值中,可以使用“\”转义字符
(6)如果需要增加变量的值,那么可以进行变量值得叠加,不过变量值需要用双引号包含 "$变量名" 或用 ${变量名}包含
(7)如果是把命令的结果作为变量值赋予变量,则需要使用反引号或$()包含命令
(8)环境变量名建议大写,便于区分
例:
3.变量的分类:
(1)用户自定义变量
(2)环境变量:这种变量中主要保存的是和系统操作环境相关的数据。
(3)位置环境变量:这种环境变量主要死用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是固定的
(4)预定义变量:是Bash中已经定义好的变量,变量名不能定义,变量作用也是固定的。
4.环境变量:
用户自定义变量只在当前Shell中生效,而环境变量会在当前Shell和这个Shell所在的子shell当中生效,如果把
环境变量写入相应的配置文件,那么这个环境变量就会在所有Shell中生效
设置环境变量值:
export 变量名=变量值 ---->申明变量
env 查询变量
unset 删除变量名
案例:
系统搜索命令的路径
系统常见环境变量:
其实应该用叠加的方式加上这个变量 PATH="$PATH":root/sh
PS1:系统提示符变量
5.位置参数变量:
案例:
6.预定义变量:
案例:
接收键盘输入:
命令格式:read 【选项】【变量名】
选项:-p 提示信息: 在等待read输入时,输出提示信息
-t 秒数 read命令会一直等待用户输入,使用此选项可以指定等待秒数
-n 字符数 read命令只接受指定的字符数,就会执行
-s 隐藏输入的数据 ,适用于机密信息的输入
案例: