zl程序教程

您现在的位置是:首页 >  系统

当前栏目

跟老男孩学Linux运维:Shell编程实战3.4 变量定义技巧总结

Linux编程变量运维shell 总结 实战 技巧
2023-09-11 14:16:03 时间


可以多学习和模仿操作系统自带的/etc/init.d/functions函数库脚本的定义思路,多学习Linux系统脚本中的定义,有经验的读者最终应形成一套适合自己的规范和习惯。

(1)变量名及变量内容定义小结

变量名只能为字母、数字或下划线,只能以字母或下划线开头。

变量名的定义要有一定的规范,并且要见名知意。

示例:

OldboyAge=1 # ==每个单词的首字母大写的写法

oldboy_age=1 # ==单词之间用"_"的写法

oldboyAgeSex=1 # ==驼峰语法: 首个单词的首字母小写,其余单词首字母大写

OLDBOYAGE=1 # ==单词全大写的写法

一般的变量定义、赋值常用双引号;简单连续的字符串可以不加引号;希望原样输出时使用单引号。

希望变量的内容是命令的解析结果时,要用反引号``,或者用$()把命令括起来再赋值。

(2)Shell定义变量时使用“=”的知识

“a=1”里等号是赋值的意思;比较变量是否相等时也可以用“=”或“==”。

(3)打印输出及使用变量的知识

打印输出或使用变量时,变量名前要接$符号;变量名后面紧接其他字符的时候,要用大括号将变量部分单独括起来,以防止出现“金庸新著”的问题;在unset、export、(())等场景中使用但不打印变量时不加$,这个有些例外。

打印输出或使用变量时,一般加双引号或不加引号;如果是字符串变量,最好加双引号;希望原样输出时使用单引号。

关于变量命名的更多规范可参考第14章。