计算来自 stdin 的单词和行数



如何使用标准UNIX实用程序编写一个程序,该程序将一次从标准输入中读取一个字符的数据,并将结果输出到标准输出。我知道在这种情况下,它的运行类似于 C 程序。有人告诉我,这可以在一行代码中完成,但从未做过Unix管道编程,所以我只是好奇。该程序的目的是从标准输入中读取数据,并计算一行和标准输出中的单词数和行的总数

我想出了以下代码,但我不确定:

tr A-Z a-z < file | tr -sc a-z | sort uniq -c wc 'n'

关于如何获得我想要的东西的任何想法或建议?

您可以使用wc字数统计)-w选项来计算文件中的字数或行-l中的字数。

$ cat file.txt
this file has 5 words.
$ wc -w file.txt             # Print number of words in file.txt
5 file.txt
$ wc -l file.txt             # Print number of lines in file.txt
1 file.txt
$ wc file.txt                # No option, print line, words, chars in file.txt
 1  5 23 file.txt

其他wc选项:

  -c, --bytes            print the byte counts
  -m, --chars            print the character counts
  -l, --lines            print the newline counts
  -L, --max-line-length  print the length of the longest line

相关内容

  • 没有找到相关文章

最新更新