3.4 变量定义技巧总结
可以多学习和模仿操作系统自带的/etc/init.d/functions函数库脚本的定义思路,多学习Linux系统脚本中的定义,有经验的读者最终应形成一套适合自己的规范和习惯。
(1)变量名及变量内容定义小结
变量名只能为字母、数字或下划线,只能以字母或下划线开头。
变量名的定义要有一定的规范,并且要见名知意。
示例:
OldboyAge=1 #<==每个单词的首字母大写的写法
oldboy_age=1 #<==单词之间用"_"的写法
oldboyAgeSex=1 #<==驼峰语法: 首个单词的首字母小写,其余单词首字母大写
OLDBOYAGE=1 #<==单词全大写的写法
一般的变量定义、赋值常用双引号;简单连续的字符串可以不加引号;希望原样输出时使用单引号。
希望变量的内容是命令的解析结果时,要用反引号``,或者用$()把命令括起来再赋值。
(2)Shell定义变量时使用“=”的知识
“a=1”里等号是赋值的意思;比较变量是否相等时也可以用“=”或“==”。
(3)打印输出及使用变量的知识
打印输出或使用变量时,变量名前要接$符号;变量名后面紧接其他字符的时候,要用大括号将变量部分单独括起来,以防止出现“金庸新著”的问题;在unset、export、(())等场景中使用但不打印变量时不加$,这个有些例外。
打印输出或使用变量时,一般加双引号或不加引号;如果是字符串变量,最好加双引号;希望原样输出时使用单引号。
关于变量命名的更多规范可参考第14章。
时间: 2024-12-22 19:02:17