如何使用标准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