其实也可以检查其他语言的语法错误,把代码内的php -l 换了就行
#! /bin/bash # # check_php_syntax.sh # Copyright (C) 2014 <http://superfly81.blog.51cto.com/> # # Distributed under terms of the MIT license. # #!/bin/bash # check php syntax if [ $# -lt 1 ];then echo 'Usage: ' $0 'directory'; exit fi if [ ! -d $1 ];then echo $1 'not a directory,please check!'; exit fi directory=$1 echo $directory temp_file="/tmp/file$$" echo $temp_file ls -R $directory | awk ' BEGIN{ FS="n" folder="'$directory'" logname="'$temp_file'" temp="" } { if($0~/.php$/){ system("php -l " folder "/" $0 " >> " logname " 2>&1") } if($0~/:$/){ temp=substr($0,1,length($0)-1) folder=temp } } ' #folder=substr($1,1,length($1)-1) if [ -e $temp_file ];then cat $temp_file | awk ' BEGIN{ error = 0 } { if($0~/Parse/) { error++ errorfile[$0] = $0 } } END{ print "错误文件:" error "个" if(length(errorfile)>0) print "错误行数:" for (i in errorfile) print i } ' else echo "php file not found." exit; fi
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。