【Shell脚本编程系列】Shell脚本开发的习惯和规范

时间:2021-06-09 15:51:19

1、开头指定脚本解释器

#!/bin/sh或#!/bin/bash

2、开头加版本版权信息

#Date

#Author

#Mail

#Function

#Version

提示:可配置vim编辑文件时自动加上以上信息,方法是修改~/.vimrc配置文件

3、脚本中不用中文注释

尽量用英文注释,防止本机或切换系统环境后出现中文乱码的困扰

4、尽量以.sh为扩展名

Script-name.sh

5、代码书写优秀习惯

1)成对的内容一次性写出来,防止遗漏:{}   []   ‘’   “”

2)[]中括号两端要有空格

3)流程控制语句一次完成

If语句格式一次完成:

If  条件内容

then

内容

fi

for循环格式一次完成:

for

do

内容

done

4)通过缩进让代码易读

7、脚本文件名命名规范

Linux系统区分英文字母大小写,命令目录和命名文件的规则是一样的,除非特别需要都要使用小写字母。

1)文件名的字符包括:字母 数字  点  下划线 连字符 (问号   星号  空格  货币符 括号 )少用。

2)文件脚本名的规范:不以数字开头

3)脚本文件的命名,尽量使用英文单词、词组或断句的缩写,以方便管理脚本,起到见文生意的效果。

4)由于脚本文件会被不断完善,所以脚本可能会被添加新的功能或修改某些不足,我们定义脚本的格式如下:脚本作用.主版本好.修改次数.shell类型

5)为了区别不同的脚本,在定义名称的时候,给脚本加上相应的扩展名以区分不同脚本使用的shell。常用的有sh  bash  ksh

8、变量命名规范

在linux系统中,变量的种类有环境变量、本地变量。位置变量、特殊变量。通常我们根据变量的存活范围分为两类:全局变量和局部变量。

1)全局变量:从定义开始,在整个脚本中都有普遍意义,变量的生命周期在变量定义时到脚本结束

变量名可以和数字和字母组成

使用Pascal命名法

名字尽量不使用缩写

名字可以由两个或三个单词组成,但通常不应该多于3个

不要使用下划线字符

2)局部变量:在脚本代码中的部分代码片段有特定的意义,虽然他的生存周期也是从定义变量开始到脚本结束。在流程控制中常用

变量名可以由数字和字母组成

变量名采用全部英文符小写的方式

变量名称尽量使用缩写,最好不要超过6个字符

3)变量使用规范

在shell中变量的引用,通常使用”$变量名”的方式进行引用,然而在脚本中,常常需要将变量值和字符串混合输出,结果导致输出的结果不符合实际的需求,所以统一定义对变量的引用采用以下的引用方式${变量名}

9、脚本代码注释规范

良好的脚本代码注释习惯可以大大增加脚本的可读性。为读懂脚本,修改脚本提供了快捷的途径。

脚本代码注释可以使用#和分号两种方式进行注释,#一般用于描述性的注释,旨在说明代码的作用或怎么使用,而分号通常用于示例性的注释,特别是在一些配置文件中常常会用到。

10、引用符号使用规范

Shell中有三种引用符号:双引号、单引号和反引号

尽量少用单引号,对一个字符串需要进行多个特殊字符进行屏蔽特殊含义时才使用单引号;

对特殊字符进行屏蔽特殊含义时,使用反斜线进行屏蔽

使用单引号屏蔽字符时,单引号内一般不使用其他引用符号,除非是打印特殊符号本身

使用反引号进行执行一个shell命令时,反引号一般加其他引用符号,除非需要进行屏蔽特殊字符时才使用反斜线和单引号。

11、脚本函数定义规范

在shell脚本编程,通常把特定功能模块写成函数,可以在多个脚本中调用,为了区别变量名和函数名的不同,对函数名做如下定义:

变量名可以由数字和字母组成