【问题标题】:Finding all punctuation in a text file & print count查找文本文件中的所有标点符号并打印计数
【发布时间】:2015-10-27 06:36:50
【问题描述】:

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

像这样:

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


【解决方案1】:

这个:

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

基本上你在这里所做的是将所有非标点字符替换为\n。因此,当两个标点字符之间没有这样的字符时,您可以将它们彼此相邻

你想要这样的东西:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-22
    • 1970-01-01
    • 2020-08-28
    • 2014-07-08
    相关资源
    最近更新 更多