Answers:
这个怎么样:
fgrep -o f <file> | wc -l
注意:除了更容易记住/复制和自定义之外,这比Vereb的答案快大约三倍(对不起,编辑!使第一个测试失败)。
\r或\n字符,此功能将无效。的tr -cd f回答不工作了点。
a,b与c使用egrep:egrep -o 'a|b|c' <file> | wc -l。
wc -c在tr答案中使用:由于grep逐行输出,wc会将行尾计为字符(因此,字符数加倍)。
\r,但是要计数\n为什么不只使用wc -l?
甚至更快:
tr -cd f < file | wc -c
该命令的时间为 4.9 MB,出现1100000个字符时出现以下命令:
real 0m0.089s
user 0m0.057s
sys 0m0.027s
时间Vereb答案有echo,cat,tr和bc相同的文件:
real 0m0.168s
user 0m0.059s
sys 0m0.115s
时间罗布Hruska的回答有tr,sed并wc为同一个文件:
real 0m0.465s
user 0m0.411s
sys 0m0.080s
时间Jefromi答案与fgrep和wc相同的文件:
real 0m0.522s
user 0m0.477s
sys 0m0.023s
a,b和c:tr -cd abc < file | wc -l。
tr -cd abc < file | wc -c代替
echo $(cat <file> | wc -c) - $(cat <file> | tr -d 'A' | wc -c) | bc
其中A是字符
该命令使用的文件大小为4.9 MB和1100000出现的时间:
real 0m0.168s
user 0m0.059s
sys 0m0.115s
cats,将文件名作为wcand 的参数,则速度会提高三分之一tr。
stdin,但是可以通过管道而不是cated 来读取:tr -d 'A' < <file> | wc ...