02. Shell 变量-用户自定义变量

本文详细介绍了Shell中的自定义变量,包括变量的分类、命名规则、赋值方法、声明、引用、作用域以及清除。讲解了环境变量、预定义变量、脚本变量和用户自定义变量的区别,并阐述了变量命名的注意事项,如不能以数字开头,不能使用标点符号等。同时,文章还讨论了变量赋值的不同方式,如命令执行结果、包含其他变量的表达式等。
摘要由CSDN通过智能技术生成

Shell 变量

Shell 语言是一种动态类型和弱类型语言, 因此,在Shell中无需显示地声明变量, 且变量的类型会根据不同的操作符而发生变化.

  • 静态类型语言: 在程序编译期间就确定变量类型的语言, 如java, C++等
  • 动态类型语言: 在程序运行期间才确定变量类型的语言, 如PHP, Python等.

1. 变量简介

1.1 变量分类

  • 环境变量: 主要保存的是和系统操作环境相关的变量, 可以新增和修改
  • 预定义变量: 系统预设的一些变量
  • 脚本变量: 调用脚本时, 传入的参数, 又称位置参数变量
  • 用户自定义变量: 脚本中设置的变量

1.2 变量名命名

  • 变量名区分大小写
  • 变量名可以由字母,下划线,数字组成, 但是不能以数字开头.
  • 变量名和=号直接不能有空格
  • 变量名不能以数字开头, 首个字符只能为字母(A-Z, a-z)
  • 变量名直接不能有空格, 可以使用下划线
  • 变量名不能使用标点符号
  • 环境变量名建议全部大写

1.2 变量赋值

  • 变量值与=号直接不能有空格
  • 变量类型默认都是字符串类型
  • 变量值可以使用特殊符号,转义符号, 如: name=“zhang\nsan”
  • 变量值可以是命令执行的结果, 用反引号, 如:dt=date
  • 变量值可以是包含其他变量的表达式, 如:result=“hello,$name”

2. 变量的声明

  • 通常Shell中的变量无须事先声明, 但对于需要限制变量类型或读写设置时,就需要实现声明了.声明变量使用 declare 命令
  • 命令格式: declare [-irA] varName
# 默认为字符串类型变量, 会将6/3设置为一个字符串
a=6/3
echo "$a"

# 声明数字类型变量
declare -i a
a=6/3
echo "$a"

# 声明关联数组变量
declare -A hash
hash[A]="aaa"
hash[B]="bbb"
hash[C]="ccc"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值