计数和修改线路,在Linux中单词和字符文本文件

一系列命令从简单到相当复杂的会帮助你数行,文字或Linux命令行上单个字符。

  • 在Facebook上分享
  • 在Twitter上分享
  • 分享在LinkedIn
  • 在Reddit分享
  • 通过电子邮件分享
  • 印刷资源
一堆书;打开一本书,散射飞信到周围环境中。
多明多明/阿列克谢德瑞/盖蒂图片社

Linux包括一些有用的命令时计算文本文件。这篇文章探讨的一些选项数线和文字和更改,可能会帮助你看到你想要的。

数线

数线文件是非常容易的wc命令。使用一个命令如下所示,你会得到一个快速的反应。

myfile wc - l myfile 132美元

什么wc命令实际上是计算是换行字符的数量在一个文件中。所以,如果你有一个单行的文件没有换行符结束时,它会告诉你文件有0线,

wc - l命令也可以计算管道的线路在任何文本。在下面的示例中,wc - l计算文件和目录的数量在当前目录。

ls - l | wc - l 1184美元

如果你管文本wc命令用一个连字符作为它的参数,wc将数行,文字和字符。

美元回声你好| wc - 1 3 13

反应显示的行数(1),(3)和字符(13包括换行符)。

如果你想要得到相同的信息文件,管道的文件wc命令,如下所示。

美元猫笔记| wc - 48 613 3705 -

计算的话

只是一个单词计数,使用w选项如下面的示例所示。

wc - w美元纸币TT2 613日期| wc - w 7

计算字符

计算字符在一个文件中,使用- c选择。请记住,这将计数换行字符和字母和标点符号。

TT2 wc - c TT2 3705美元

计算特定单词的实例

计算有多少次一个特定的单词出现在一个文件就复杂得多。数多少行包含一个单词是相当容易。

猫笔记| grep美元| wc - l 32美元猫笔记| grep (Tt)他| wc - l 40

上面第二个命令项行包含“”这个词是否大写。它仍然没有告诉你多少次“的”总体来说,因为任何线包含不止一次被这个词只统计一次。

忽略标点和大写

一些词语(如“”和“”)将不止一次出现在你的单词列表。你也会看到字符串“结束”和“结束”。因为上述命令不单独的文字从标点符号。搬过去的这些问题,一些额外的命令添加到下面的例子。

删除标点符号

下面的命令包含一长串的文件传递给一个标点字符tr - d从输出命令删除他们所有人。注意,除了“字符”字符串从输出中移除。

猫punct-chars字符。美元?”!,:“{}[]():美元猫punct-chars | tr - d”[punct:]的角色

文本转换为小写

一个tr命令可以将所有字符小写,确保以大写字母开头的单词(通常因为他们开始句子)或包含所有首都不分开列出这些都出现在小写。

回声“你好”给你美元| tr [a - z]的[a - z]的喂给你

使用脚本

下面的脚本设置三套命令提取文本文件的内容,提取单词使用越来越全面的策略,以便您可以看到在每一个阶段的输出。

注意:该脚本传递最终输出的集合命令的输出更容易。

# !/bin/bash echo - n”文件:“#单独文件读入wor-per-line格式tr - s[空白:]的[\ n]的< $ file > $ file 2 #柱状格式的单词列表排序文件2美元| uniq echo - n - c |列“下命令尝试吗?>“读ans #删除标点符号$ file 2 | tr - d ' [punct:] | uniq echo - n - c |列“下命令尝试吗?>“读ans #改变文本所有小写字母排序文件2美元| tr - d ' [punct:] | tr [a - z]的[a - z]的| uniq - c |列

下面的输出显示了你会看到如果你跑脚本对爱因斯坦报价如下:

“有两件事是无限的:宇宙和人类的愚蠢;我不确定宇宙。”― Albert Einstein
美元词词文件:爱因斯坦1 - 1人2 1对1我1 1艾伯特无限的东西:1”两个2和1宇宙不是1 1 1愚蠢;1宇宙。”1 Einstein 1 sure try next command?> y 1 ― 1 human 2 the 1 about 1 Im 1 things 1 Albert 1 infinite 1 Two 2 and 1 not 2 universe 1 are 1 stupidity 1 Einstein 1 sure try next command?> y 1 ― 1 human 2 the 1 about 1 im 1 things 1 albert 1 infinite 1 two 2 and 1 not 2 universe 1 are 1 stupidity 1 einstein 1 sure

消除的影响的一些标点符号有一个缺点,因为他们把撇号从收缩像“是”。脚本还decapitalizes专有名词。

注意字符不从爱因斯坦引用删除标点取消命令。此外,如果您的文本包括左倾和右倾的双引号,他们也不会消除。这是因为这些角色的定义不包括在“[punct:]”。

总结

Linux包括计算线路的多种方式,单词和字符在文本和修改,帮助计算单词。一些只是比其他人稍微复杂一点。

相关:

版权©2023 IDG通信公司。足球竞彩网下载

企业网络2022的10个最强大的公司