用于计数行数的shell脚本程序

时间:2016-12-01 06:34:38

标签: linux shell codeigniter

编写一个shell脚本来计算文件中的行数,字符数,单词数(不使用命令)。同时从文件中删除出现的单词“Linux”,并将结果保存到新文件中。

2 个答案:

答案 0 :(得分:1)

这是我在没有使用任何第三方套餐的情况下最接近的......

#!/bin/bash

count=0
while read -r line
do
    count=$((count + 1))
done < "$filename"
echo "Number of lines: $count"

答案 1 :(得分:0)

  • Sachin Bharadwaj给出了一个重要的剧本。
  • 现在,要计算单词,我们可以使用set将行拆分为$#位置参数。
  • 要计算字符数,我们可以使用参数长度:${#line}
  • 最后,要删除每个“Linux”,我们可以使用模式替换:${line//Linux}

(参见Shell Parameter Expansion。)

全部合在一起:

while read -r line
do
    ((++count))
    set -- $line
    ((wordcount+=$#))
    ((charcount+=${#line}+1))   # +1 for the '\n'
    echo "${line//Linux}"
done < "$filename" >anewfile
echo "Number of lines: $count"
echo "Number of words: $wordcount"
echo "Number of chars: $charcount"