有一个
shell脚本应该处理传入的文本文件.
此文本文件包含多行分割的字符串,每个字符串多次出现.
shell脚本需要读取此文本文件并输出每个字符串的String和count.
考虑文本文件是:
Tim
tim
Mark
MARk
Allen
ALLen
allEN
输出应该是这样的:
Tim appears 2 times
Mark appears 2 times
Allen appears 3 times
现在,我能够打印字符串的出现,但是重复字符串出现的次数,即“Tim出现2次”被打印两次.我在计算它的出现时我试图用NULL替换一个字符串,但由于某种原因,sed不起作用,因为我可能没有在正确的位置(或以正确的方式)调用它
#!/bin/bash
INPUT_FILE="$1"
declare -a LIST_CHARS
if [ $# -ne 1 ]
then
echo "Usage: $0 "
exit 1
fi
if [ ! -f $INPUT_FILE ]
then
echo "$INPUT_FILE does not exists. Please specify correct file name"
exit 2
fi
while read line
do
while read i
do
echo $line
count=`grep -i $line | wc -l`
echo "String $line appears $count times"
done < $INPUT_FILE
done < $INPUT_FILE