检查整个目录php语法错误脚本

其实也可以检查其他语言的语法错误,把代码内的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
时间: 2024-10-30 06:20:19

检查整个目录php语法错误脚本的相关文章

sublime text 2 php 语法错误检查

使用sublime text 2 编写php程序的时候,保存代码的时候,直接检查出语法错误,有利于提高效率. 1.安装sublime text 2 package menu : preferences->package control -> install package 安装 PHP Syntax Checker插件 sublime 2 安装目录: C:\Program Files (x86)\Sublime Text 2 package和配置存放目录: C:\Users\xzz64\App

shell脚本启动语法错误syntax error near unexpected token &#39;{

执行shell脚本时失败,报语法错误,但脚本内容检查正常 原因为该脚本是在非Linux系统下编辑之后放到系统执行的,文件模式类型非Linux系统匹配的模式类型. 查看文件的模式类型 显示文件的模式类型为 dos 修改文件的模式类型为Linux匹配的 unix 保存之后即可正常启动脚本. shell脚本启动语法错误syntax error near unexpected token '{ 原文地址:https://www.cnblogs.com/zjfjava/p/10708370.html

Python脚本运行出现语法错误:IndentationError: unindent does not match any outer indentation level(转)

[问题] 一个python脚本,本来都运行好好的,然后写了几行代码,而且也都确保每行都对齐了,但是运行的时候,却出现语法错误: IndentationError: unindent does not match any outer indentation level [解决过程] 1.对于此错误,最常见的原因是,的确没有对齐.但是我根据错误提示的行数,去代码中看了下,没啥问题啊. 都是用TAB键,对齐好了的,没有不对齐的行数啊. 2.以为是前面的注释的内容影响后面的语句的语法了,所以把前面的注释

Python脚本运行出现语法错误:IndentationError: unindent does not match any outer indentation level

[问题] 一个python脚本,本来都运行好好的,然后写了几行代码,而且也都确保每行都对齐了,但是运行的时候,却出现语法错误: IndentationError: unindent does not match any outer indentation level [解决过程] 1.对于此错误,最常见的原因是,的确没有对齐.但是我根据错误提示的行数,去代码中看了下,没啥问题啊. 都是用TAB键,对齐好了的,没有不对齐的行数啊. 2.以为是前面的注释的内容影响后面的语句的语法了,所以把前面的注释

Python脚本运行出现语法错误:IndentationError: unindent does not match any outer indentation level【转】

http://www.crifan.com/python_syntax_error_indentationerror/ [问题] 一个python脚本,本来都运行好好的,然后写了几行代码,而且也都确保每行都对齐了,但是运行的时候,却出现语法错误: IndentationError: unindent does not match any outer indentation level [解决过程] 1.对于此错误,最常见的原因是,的确没有对齐.但是我根据错误提示的行数,去代码中看了下,没啥问题啊

shell 判断脚本有无语法错误

判断一个指定的脚本是否是语法错误:如果有错误,则提醒用户键入Q或者q无视错误并退出,其它任何键可以通过vim打开这个指定的脚本: #!/bin/bash script_file="./test.sh" sh -n $script_file>/dev/null 2 >/dev/null n=`echo $?` if [ $n -ne 0 ];then read -p "this script is a bad file , "q" or &quo

Visual LISP 第5章 编辑源程序代码(4)检查语法错误

1.检查括号是否匹配 有关括号操作的快捷键 组合快捷键 功能 Ctrl + ] 如果光标的右边是右括号,则将光标移到到该右括号之后:如果光标的右边是左括号,则将光标移动到和它匹配的右括号之后 Ctrl + [ 如果光标的左边是左括号,则将光标移动到该左括号之前,如果光标的左边是右括号,则将光标移动到和它匹配的左括号之前 Ctrl + Shirt + ] 如果光标的右边是右括号,则将光标移动到该后括号之后,如果光标的右边是左括号则将光标移动到和它匹配的右括号之后,并且选取期间的所有文本 Ctrl

使用node.js检查js语法错误

如果没有一些工具和插件写JavaScript代码遇到语法错误找起来很费时间,请教了同事怎么用node.js检查 用浏览器测试的时候报语法错误. 1.点击红圈中的蓝色按钮,下次刷新是会在抛出异常的时候自动断点调试. 3.出现错误断点后,在Console中 用 var a = code ,吧code赋值给a(这样打印的比较快),然后 输入 a 把错误代码打印出来 4.把红色引号里面的代码考出复制到新建的js文本中(如a.js),然后下载node.js安装5.在新建js文本路径中打开命令窗口,输出 n

【已解决】Python脚本运行出现语法错误:IndentationError: unindent does not match any outer indentation level

转自:http://www.crifan.com/python_syntax_error_indentationerror/comment-page-1/ [问题] 一个python脚本,本来都运行好好的,然后写了几行代码,而且也都确保每行都对齐了,但是运行的时候,却出现语法错误: IndentationError: unindent does not match any outer indentation level [解决过程] 1.对于此错误,最常见的原因是,的确没有对齐.但是我根据错误提