zoukankan      html  css  js  c++  java
  • Shell脚本统计文件行数

    Shell脚本统计文件行数

    示例:row_count.sh文件

    awk '{print NR}' row_count.sh | tail -n1
    
    awk 'END{print NR}' row_count.sh
    
    grep -n "" row_count.sh|awk -F: '{print '} | tail -n1
    
    sed -n '$=' row_count.sh
    
    wc -l row_count.sh
    
    cat row_count.sh | wc -l

    一、获取指定目录所有文件的行数:

    #!/bin/bash 
    
    filesCount=0
    linesCount=0
    function funCount()
    {
        for file in ` ls $1 `
        do
            if [ -d $1"/"$file ];then
                funCount $1"/"$file
            else
                declare -i fileLines
                fileLines=`sed -n '$=' $1"/"$file`
                let linesCount=$linesCount+$fileLines
                let filesCount=$filesCount+1
            fi
        done
    }
    
    if [ $# -gt 0 ];then
        for m_dir in $@
        do
            funCount $m_dir
        done
    else
        funCount "."
    fi
    echo "filesCount = $filesCount"
    echo "linesCount = $linesCount"

    使用方法:

    1、针对本目录

    ./count.sh

    2、统计多个目录

    ./count.sh /tmp ~

    二、获取指定目录特定扩展名文件的行数

    #!/bin/bash
    extens
    =(".c" ".cpp" ".h" ".hpp") filesCount=0 linesCount=0 function funCount() { for file in ` ls $1 ` do if [ -d $1"/"$file ];then funCount $1"/"$file else fileName=$1"/"$file EXTENSION="."${fileName##*.} echo "fileName = $fileName Extension = $EXTENSION" if [[ "${extens[@]/$EXTENSION/}" != "${extens[@]}" ]];then declare -i fileLines fileLines=`sed -n '$=' $fileName` echo $fileName" : "$fileLines let linesCount=$linesCount+$fileLines let filesCount=$filesCount+1 fi fi done } if [ $# -gt 0 ];then for m_dir in $@ do funCount $m_dir done else funCount "." fi echo "filesCount = $filesCount" echo "linesCount = $linesCount"

    使用方法:

    1、针对本目录

    ./count.sh

    2、统计多个目录

    ./count.sh /tmp ~
  • 相关阅读:
    11.11 开课二个月零七天(ajax和bootstrp做弹窗)
    11.10 (下午)开课二个月零六天(ajax验证用户名,ajax调数据库)
    获取当月时间段。
    JavaScript prototype 使用介绍
    JavaScript arguments对象
    JS,DOM对象新知识点整理
    JS清除选择的内容
    限制显示内容,超出用省略号代替的方法
    封装php连接数据库返回方法
    div跟随鼠标移动代码
  • 原文地址:https://www.cnblogs.com/fieldtianye/p/10728549.html
Copyright © 2011-2022 走看看