开发者社区> 技术小阿哥> 正文

shell脚本编程的一些好习惯

简介:
+关注继续查看

1.命名规则

  脚本命名以.sh结尾,名称尽量见名之意。以下是几种可供参考的脚本命名风格。通过以下清新脱俗的风格,读者能够很easy的明白脚本的作用。


        clearlog.sh 
        ClearLog.sh 
        clearSql.sh
        snmp_install.sh
        Monitor.sh


2.脚本信息

  为脚本加入生动的信息,比如脚本功能的描述,作者,时间,版本信息等。


    #!/bin/bash  #调用语言
	#
	# Filename: log_receiver.sh
	# Description: LOG number write DB 
	# Author:Karwai Wong 
	# Email: xxxx@jiecao.com
	# Revision: 1.1
	# Date: 2046-04-06



3.代码格式

  代码格式统一简洁,避免过于花哨。缩进格式要统一,一般使用四个空格作为一个缩进。为脚本中内容加入适当的注释也是一个良好的习惯。以下代码是我创建的一个小脚本,文件名为newscript.sh,其功能是为新创建的文件添加注释信息。这些信息为脚本的相关信息。只要执行这个脚本,就可以快速地为新脚本文件添加注释信息。 
其执行方式可这样:bash newscript.sh 新脚本文件名

    #!/bin/bash                                                  
    # Filename:shell scripts standard
    # Description:make shell scripts standard fastly   
    # Author:Karwai Wong 
    # Email: xxxx@jiecao.com
    # Revision: 1.1
    # Date: 2046-04-06
     
    # function:make shell scripts standard for newfile
    new_file_name=$1
    if ! grep -q "#!" ${new_file_name};then
    	cat>>${new_file_name}<<EOF
    	#!/bin/bash
      	#
      	# Filename: 
    	# Description: 
    	# Author:
    	# Email:
    	# Revision: 
    	# Date:
    	EOF
    fi
    # open text form  the 9 lines
    vim +9 ${new_file_name}


4.编写脚本的一些注意事项

  养成良好的编程习惯,注重细节,追求极致,这是成为一个优秀的程序员的基本条件。以下是在下shell脚本编程生涯的一些经验之谈,是关于shell脚本一些tip,如有不妥之处,还请指出。

   

    1.调试功能。我把调试分为内部调试和外调试。
        内部调试:在脚本内部通过echo $?命令,判断脚本的执行状态。
        外部调试:
            bash -n script 判断脚本语法是否正确
            bash -x script 调试模式,输出每一步的执行信息
    2.脚本执行
        1.建议在脚本执行的开始重读下/etc/profile文件, 或者是自己定义的关于环境变量的配置文件,推荐使用
source,如:
             source /etc/profile
             source /opt/sh/appenv.sh
        2.在某些特殊的环境下,shell脚本里引用的命令,有可能是自己定义的bin路径,在执行的时候会报出command
not found,解决的方式是在执行命令时补全路径。
            export PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/apps/bin/ 
    3.条件测试
        条件测试的时候,尽量使用[[]],而不用[]或者test,因为[[]]功能会更强大。
    4.与或非
        可以使用&& || !来替代简单的if-then-else-fi语句。这样会使代码看上去更加的简洁。
    5.函数功能
        尽可能的使用函数的功能,将不同的功能定义为函数,下次使用时,直接引用函数。
    6.日志备份
        关键的操作须有日志输出,专门记录操作的成功或者失败以及执行的时间点


本文转自 PowerMichael 51CTO博客,原文链接:http://blog.51cto.com/huwho/1918539,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
大数据开发基础的Linux系统的基本的Shell编程
在大数据开发中,Linux系统是一个非常重要的操作系统。而Shell编程是Linux系统中最基本的编程方式之一,能够帮助我们更高效地完成各种任务。本文将介绍关于大数据开发基础的Linux系统的基本的Shell编程。
25 0
Linux shell编程(if、for、case、while语句的解释与应用)
Linux shell编程(if、for、case、while语句的解释与应用)
30 0
Linux shell编程基础语法语句(shell变量,shell脚本语句,test测试语句)
Linux shell编程基础语法语句(shell变量,shell脚本语句,test测试语句)
22 0
嵌入式LINUX(C语言编程)家目录与根目录的解析,shell编程格式,常用命令与解释
嵌入式LINUX(C语言编程)家目录与根目录的解析,shell编程格式,常用命令与解释
41 0
Shell 编程三剑客之Sed(二)
Shell 编程三剑客之Sed(二)
19 0
+关注
技术小阿哥
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
Gululu重新定义儿童饮水习惯
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载