Bash-变量(自定义/预定义/环境/位置参数)

发布时间 2023-09-16 11:00:37作者: SiNanhong

变量设置规则

  • 变量名称可由字母、数字下划线组成,但不能以数字开头(与python命名规则一致)
  • Bash中,变量的默认类型都是字符串型,如果要数值运算,则必须指定变量为数值型
  • 变量由 = 连接值,等号左右两侧不能为空
  • 变量的值如果有空格,需要用单引号双引号包含
  • 变量的值可以使用'\'转义符
  • 如果需要增加变量的值,可以进行变量值的叠加,需要用双引号包含"$变量名"或用${变量名}包含
  • 如果是把命令的结果作为变量值赋予变量,需要用反引号$()包含
  • 环境变量名建议大写,便于区分

 

变量分类

  • 用户自定义变量
  • 环境变量:主要保存的是和系统操作环境相关的数据
  • 位置参数变量:主要是用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是固定的
  • 预定义变量:Bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的

 

一.用户自定义变量

 

二.环境变量

  • 用户自定义变量只在当前Shell中生效,环境变量会在当前Shell和这个Shell的所有子Shell当中生效。如果把环境变量写入相应的配置文件,那么这个环境变量就会在所有的Shell中生效

 

常见环境变量路径

 

PS1:系统定义的提示符变量

 

三.位置参数变量

 

四.预定义变量

 

接收键盘输入(read)

read 【选项】【变量名】

选项:

  • -p“提示信息”:在等待read输入时,输出提示信息
  • -t“秒数”:read命令会一直等待用户输入,使用-t设置等待时间
  • -n字符数:read命令只接受指定字符数就会执行
  • -s:隐藏输入的数据,适用于机密信息的输入

例子: