shell脚本规范格式

#!/bin/bash

#Date   :写作时间 2016-11-22 15:04:12 ##date "+%Y-%m-%d %H:%M:%S"

#Author      :作者

#Mail    :邮箱 [email protected]

#Function   :脚本介绍

#Version     :版本 V1.1

#Update           :脚本修改更新时间

6.1.1      版本和运行参数:

1) 脚本开发前,在脚本的开头以注释形式标清脚本版本号

2) 为脚本添加必须的运行参数,如:-v 显示版本号; -h显示帮助;

6.1.2      命名规范

变量命名:

1) 变量命名要统一,使用全部大写字母或驼峰语法

2) 避免无含义字符或数字

3) 全局变量和局部变量命名规则

全局变量使用{ },例如${JORBABE_HOME}或” ${JORBABE_HOME}”

4) 变量合并:变量或配置需要组合才有意义时,建议合并一起赋值给一个新的变量

5) 变量定义总结,多学习模仿系统自带的/etc/init.d/functons 函数库脚本定义思路

函数命名:

1)      函数命名使用单词首字母大写,也可以使用驼峰语法

2)      可以添加前后缀

3)      单词使用缩写时,也使用首字母大写

4)      名字尽量不使用缩写,除非他与众不同

5)      名字可以两个或三个单词组成,但是通常不应多余三个

脚本(模块)命名:

1)      常规shell脚本使用统一后缀:“.sh” ,例如:jorbabe.sh

2)      模块的启停脚本统一命名为start_{模块名}.sh和stop_{模块名}.sh

3)      监控脚本可以以 *_mom.sh 为后缀,控制脚本以 *_ctl.sh为后缀

4)      模块命名应以代表其特性和功能,不要使用个人名字缩写等形式

5)      模块中的脚本和二进制程序命名禁止和其他脚本和二进制程序重名

临时文件命名

尽量避免临时文件,如一定要用,请使用PID做后缀,并在脚本结束后清除。

6.1.3      代码风格规范

代码框架

1)      脚本开头解释器声明为 #!/bin/bash 或 #!/bin/sh ,尽量统一

2)      配置文件及函数脚本等的引用如, source conf/httpd.conf

3)      主脚本过程只实现程序主干,功能实现尽量封装在子函数中。

4)      对于能独立执行的脚本要有usage和version函数,可以输出用法和版本信息。

5)      规范代码树。

函数规范

1)      函数定义时在函数前加上 function 保留字,/etc/init.d/functions 中没有这样做。

2)      显示函数返回值,在函数结尾显示包含 return 语句,并跟上返回值。

条件语句与循环

1)      在使用条件语句及循环时,尽量使用统一格式,而不是使用“;”分隔

2)      尽量一行一条语句,而不是使用“;”将多个语句隔开。尽可能多的判断操作是否成功,并做响应的处理。

3)      使用简单语句,避免多重管道的命令。

4)      脚本中的 grep cut awk sed 等命令的多重过滤语句应考虑进行简化。

6.1.4      注释规范

文件模块注释:说明用途,版本输入输出文件,依赖工具及其版本信息,前后流程脚本(可选),格式统一。

重要函数注释:说明函数用途,参数,返回值,作者,版本。

养成写注释习惯:注释要详细,包含变量定义,函数定义,返回值定义,每步操作目的,注释尽量使用标准的英文。

提示:    注释尽量少用中文注释,以免运行环境改变后,中文变乱码。

非要用可以在脚本中定义 export LANG="zh_CN GB18030" 调整下字符集

原文地址:http://blog.51cto.com/xianlei/2088003

时间: 2024-11-10 07:13:48

shell脚本规范格式的相关文章

shell脚本规范与变量运用

前言随着Linux系统在企业中应用的越来越多,服务器自动化管理也变得越来越重要.Linux服务器自动化维护工作中,除了计划任务的设置外,shell脚本的应用也是非常重要的一部分.什么是shell脚本Shell脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的.但是它比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高,它使用了Linux/Unix下的命令.shell脚本的应用场景:

shell脚本规范

前言:一个标准的shell脚本包括bin.conf.log三个文件夹. 1.bin包含脚本的具体内容. 2.conf包含脚本需要获取的配置. 3.log包含脚本执行过程有无错误的log和跟业务相关的log. 编写脚本的具体过程 下面以curl+post上传脚本为例 Vim  backstage_curlpost_send_zip.sh #!/bin/bash #进入脚本目录 cd`dirname $0` #定义脚本默认错误存放 log_path_flag=../logs default_erro

shell脚本命令格式注意点

1.大部分的Linux系统默认配置bash.对比sh,bash扩展了一些命令和参数,并且保留对sh的一些兼容.除了bash.sh还有csh(语法类似C语言).tcsh(csh升级版).ash(适合低内存环境) 2.脚本开头 #!/bin/sh , #!必须有,后面跟上的是shell的路径 3.变量赋值和取值 (1) Bash shell 在默认情况下不会区分变量类型,即使你将整数和小数赋值给变量,它们也会被视为字符串,这一点和大部分的编程语言不同. variable=value  注意:赋值号左

Shell.01.shell脚本的格式和执行

1.标明shell类型: #!/bin/bash 或 #!/bin/python, etc. #!/bin/bash #Author: X #Date: 2020-02-07 #Version: 1.0 #Description: For Shell study 2.更改脚本为可执行: chmod +x yourShell.sh 3.执行 方式1: ./yourShell.sh 方式2: bash yourShell.sh 4.远程调用脚本在本机执行 curl http://ip/yourShe

Shell编程-12-Shell脚本规范及调试

目录 Shell脚本规范 Shell脚本调试 Shell脚本规范 ? ? 良好的代码规范不仅方便阅读,也利于维护和提升开发效率.因此建议大家在编写Shell脚本时养成良好的代码习惯.今天就和大家探讨一下在Shell脚本中的一些规范,详细如下所示: 1.在Shell脚本中,第一行指定脚本解释器,如下所示: #!/bin/bash 或 #!/bin/sh 2.在Shell脚本中填写代码作者.日期.版权等信息,便于协同开发 3.Shell脚本中的注释,尽量采用英文注释,避免中文注释,可避免本机或切换系

linux学习笔记:shell脚本编程相关(上)

前言 unix/linux操作系统下的shell,是一种壳,其目的是提供一个用户与计算机相互交互的命令接口,通过输入各种命令,达到操作的目的. 与此同时,shell支持控制流程,进而可以组合出各种各样的应用实例. shell脚本的格式 首行shebang机制: bash脚本,首行添加#!/bin/bash [options] csh脚本,首行添加#!/bin/csh [options] ksh脚本,首行添加#!/bin/ksh [options] -- 描述脚本的注释部分: 包括Author,

01 Shell脚本编程入门知识

Linux Shell语言使用背景  目前全球正处于“互联网+”的时代,各行各业都与互联网挂钩,比如互联网+教育.互联网+销售等等.几乎所有的商品.服务网上都能找得到,而支撑互联网的幕后支柱就是Linux系统.Linux运维技术成为IT技术人员的必备技能.  想要降低Linux运维成本就要进行运维自动化,进行自动化就需要脚本语言.时下Linux系统最流行的脚本语言就是Shell和Python.Python的流行时间短,学习成本高.而Shell几乎是所有运维公司都必须使用的自动化语言,在很多工作环

理论:详细学习shell编程规范与变量————理论讲解 初学者一定要点进来

前言: shell脚本编程规范 shell脚本应用场景 shell编程规范 管道与重定向 shell脚本变量揭秘 自定义变量 特殊变量 本次学习了解的是变量 语言分为两大类 1.强语言:定义变量的时候需要声明数据类型,一旦声明,就不可变 jave c语言 1整型 init 1 2 3 100 长整型 long 2浮点型 单精度 float 4字节 双精度 double 8字节 带小数点就是浮点型 3.string 字符串 char 字符 英文字母字符 a 占一个字节 ? 中文汉字字符,男 占两个

BASH SHELL 脚本基础

什么是shell     Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命令语言.命令解释程序及程序设计语言的统称. shell是用户和Linux内核之间的接口程序,如果把Linux内核想象成一个球体的中心,shell就是围绕内核的外层.当从shell或其他程序向Linux传递命令时,内核会做出相应的反应.            shell是一个命令语言解释器,它拥有自己内建的shell命令集,shell也能被系统中其他应用程序所调用.用户在提示符下输入的命令都