运维脚本开发规范

上一篇 / 下一篇  2014-07-23 11:13:49

1     范围

本规范规定了使用各类脚本编程时排版、注释、命名、编码、规则及建议。

本规范适用于IT运维部门编写的各类用于IT生产环境运维工作脚本,和即将开发的运维脚本。

 

2     术语和定义

规则:编程时须遵守的原则。

格式:对此规范格式的说明。

说明:对此规范或建议进行必要的解释。        

示例:对此规范或建议的例子。

 

3     开发语言种类

按使用系统或应用平台不同,分别采用以下的标准开发语言,具体如下表:

序号

脚本开发语言类型

使用系统或应用平台

1

ShellKshell Bshell)、Perl脚本

UnixLinux

2

JScript脚本

Windows

3

SQL, PL/SQL脚本

Oracle

4

Notes脚本

Lotus Notes

5

JACL脚本

IBM Websphere

6

TSQL脚本

SQLServer

 

4     排版规范

4.1 规则

4.1.1     程序缩进

程序需要考虑到可读性,程序块要采用缩进风格编写。[Must]

 

4.1.2       长语句的处理

较长的语句要分成多行书写,使排版整齐,语句可读,分界符应各占一行,并位于同一列。[Should]

示例:

if [ $filename != “null” && $logpath -gt $filesize

&& $logname != “root” && $curpath != $path ]; then

{

Program Code…

}

fi

 

4.1.3       不允许把多个短语句写在一行中,即一行只写一条语句[Must]

示例:如下例子不符合规范。

host=`hostname`;       reportfile="${host}";

应书写如下

host=`hostname`

reportfile="${host}"

 

5     注释规范

5.1 规则

5.1.1       注释的内容要清楚、明了,不允许在注释中使用缩写。[Must]

 

5.1.2       对所有的变量、常量、函数、宏等,如果其命名不是充分自注释的,在声明时都必须加以注释说明含义。[Must]

 

5.1.3       脚本必须包含文件头

脚本代码文件必须包含以下文件头信息:适用平台、功能说明、作者、创建日期、使用方式、修改历史,并且只能用英文:[Must]

模版文件如下:

ü Platform. Unix

ü Program Name: Shell test

ü Description: function description

ü AuthorCreated by…on...

ü DateCreated on...

ü Usage:

ü Modify History:

ü     Date             Author          Description

ü Modify Description:

ü Others:

 

示例:以下是符合以上标准的一个脚本文件头:

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

# PlatformUnix & Linux                                                                  #

# Program Nameupdate.sh                                                       #

# DescriptionUpdate XXX function                                                #

# Author: zhangsan/12345                                                              #

# Date2008-01-01                                                                                #

# UsageDefine                                                                              #

# CheckBackupDir(): Check the backup directoryCreat if not exist  #

# CheckIfUpgraded(): Check if the Program is upgraded                         #

# Modify History           

#  Date            Author          Description                                         #

# 2008-12-03  z00110303   Modify the CheckBackupDir                  #

# 2008-12-01  z00110303   Modify the CheckIfUpgraded                 #

# Modify Date 2008-12-03                                                             #

# Modify DescriptionXXXXXX                                                            #

# Others:                                                      #

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

 

5.1.4       函数注释内容

函数应该在头部进行相应的注释,列出函数的目的功能、参数、返回值等,并且只能用英文。[Should]

示例:下面这段函数的注释比较标准

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

# Function: //Check                                                                                        #

# Description: //Check System Information                                                     #

# Input: //-username -password                                                                    #

# Output: //True or False                                                                               #

# Return: //                                                                                                    #

TAG:

 

评分:0

我来说两句

日历

« 2024-04-24  
 123456
78910111213
14151617181920
21222324252627
282930    

我的存档

数据统计

  • 访问量: 6390
  • 日志数: 10
  • 建立时间: 2014-07-22
  • 更新时间: 2014-07-29

RSS订阅