统计PHP代码行数的小BAT程序

统计PHP代码行数的小bat程序
放到一个PHP文件夹下面,点他,就会自动统计当前目录下面的PHP文件了。
如果用记事本打开,还可以设置是否统计子目录的;也可以设置统计其它类型的代码!
统计的标准是非回车空行!
    


@echo off
:config()
:{
       set count_type=0
       :#  0:表示只统计当前目录
       :#  1:表示只统计当前目录,包括子目录

       set count_ext=.php
       :#  表示统计文件的后缀名称
:}

:main()
:{
       if %count_type%==0 (set count_info=当前目录)
       if %count_type%==1 (set count_info=当前目录,包括子目录)
       echo 代码文件数与行数统计(HonestQiao 2006-5-20 0:14)
       echo 统计方式:%count_info%
       echo 文件后缀:%count_ext%
       set /P PauseKey=开始统计(回车开始,Q退出)
       if "%PauseKey%" == "Q" goto :EOF
       if "%PauseKey%" == "q" goto :EOF
       echo.

       cd "%CD%"
       set counts=0
       set count=0
       set tmp_list=%RANDOM%.tmp
       copy /Y NUL %tmp_list% >nul 2>nul
       if %count_type%==0 (dir/b | findstr "%count_ext%\>" > %tmp_list%)
       if %count_type%==1 (dir/b/s | findstr "%count_ext%\>" > %tmp_list%)
       call :function_files_count %tmp_list%
       echo 文件总数:%counts%
       echo 行数总计:%count%
       del /Q %tmp_list%
       echo.
       set /P PauseKey=回车退出
       @echo on
       @goto :EOF
:}

:function_files_count
:{
       set counts_tmp=0
       for /F %%l in ('type %1') do (call :function_files_add "%%l")
       set /A counts=%counts%+%counts_tmp%
       goto :EOF
:}

:function_files_add
:{
       set /A counts_tmp=%counts_tmp%+1
       call :function_file_count %1
       goto :EOF
:}

:function_file_count
:{
       echo 第%counts_tmp%个文件:%1
       set count_tmp=0
       for /F %%l in ('type %1') do (call :function_file_add %1)
       set /A count=%count%+%count_tmp%
       echo 小计行数:%count_tmp%
       echo.
       goto :EOF       
:}

:function_file_add
:{
       set /A count_tmp=%count_tmp%+1
       goto :EOF
:}

关键词: bat , 代码 , 技术

上一篇: 子网换算
下一篇: 在路由器封BT方法大全-cisco

相关文章
目前还没有人评论,您发表点看法?
发表评论

评论内容 (必填):