查找文本文件中的所有标点符号并打印计数

问题描述 投票:0回答:2

我已经接近计算所有出现的标点符号,但是彼此相邻的标点符号字符被算作一个。

像这样:

cat filename.txt |
tr -sc '[:punct:]' '\n' |
sort |
uniq -c |
sort -bnr`

打印出这样的内容:

15 ,
 9 !
 5 .
 2 ;
 2 !"
 2 '
 1 -
 1 --
 1 :
 1 ?

这显然只是计算标点符号,但是我如何将彼此相邻的标点符号分开?

sorting unix command-line tr
2个回答
0
投票

这个:

tr -sc '[:punct:]' '\n' 

基本上,您在这里所做的就是用

\n
替换所有非标点符号。因此,当两个标点符号之间没有此类字符时,您会将它们放在一起

你想要这样的东西:

cat filename.txt | tr -cd [:punct:] | fold -w 1 | sort | uniq -c | sort -bnr

-1
投票

*Sensi xispe *Graciano Kabambi txio Gréece Grâce 哈哈哈哈哈哈哈哈哈哈

© www.soinside.com 2019 - 2024. All rights reserved.