Linux Shell中的变量-自定义变量

参考:《Linux命令 / 编辑器与Shell编程》


################################################

note that :与其他编程语言不同,Bash中的变量没有数据类型的区别,变量中的值都是以字符串的形式保存的,如果要进行数值计算,需要进行特殊转换


Linux Shell下的变量按其使用目的可分为3种类型:

环境变量:用于保存操作系统运行时使用的环境参数

位置变量:Bash将传递给脚本的参数保存在位置变量中,以便于在脚本中引用这些参数

预定义变量:由系统保留和维护的一组特殊的变量,这些变量通常用于保存程序运行状态等

自定义变量:由用户自行定义的变量,可用于用户编写的脚本,多个命令间的值传递等


#########################################################


用户自定义变量


Bash中的变量没有数据类型(即任何变量都可以存放数字 / 字符串等)


自定义变量的命名规则

1.由于变量没有具体的数据类型,因此在定义变量时可以不必定义其类型,直接赋值即可使用

2.在Shell中变量名称可以由大写字母 / 小写字母 / 下划线 / 数字等符号组成

3.定义变量时,建议使用大写字母 / 下划线和数字组成变量名,以免引起不必要的误解。

4.变量对大小写敏感。Mail和mail是两个不同的变量


变量的作用域

变量的作用域是指变量的引用范围,也可以理解为变量在哪个区域起作用。

1.除非使用export命令,否则在脚本中定义的变量(包括函数中定义的变量)的作用域是整个脚本。

2.在命令提示符中定义的变量和使用export定义的变量都是全局变量。全局变量可以在当前用户的任何脚本 / 命令中引用


用法示例

1.定义一个名为NAME的变量,并为其赋值为Jhon:

#直接为变量赋值即可声明变量
#变量的值可以不必放入引号内,除非值中含有特殊字符
# NAME=Jhon

2.如果用户需要经常使用一个变量,可以将这个变量定义为一个环境变量。

例如要使用变量保存备份目录:

# BACKUP_DIR=/file/backup
# export BACKUP_DIR

3.如果用户希望定义一个不能更改值的变量,可以先定义变量,然后使用readonly命令将变量转换为只读变量:

#定义变量PI
# PI=3.14
#使用命令readonly讲变量PI转换为只读变量,然后验证
# readonly PI

4.使用变量时,无论是引用变量,还是变量间的运算,都应该使用变量引用符"$"


5.当变量不再使用时,使用unset命令可以释放其占用的系统资源


note that:如果用户编写了数个脚本,并且需要使用许多变量,可以为这些变量编写单独的变量文件,或将变量设置为全局变量,需要使用时引用这些变量即可。这样即可以方便脚本的编写,又方便维护变量

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值