如何通过命令行计算文件的行数
需要获取文本文件或文档的行数?在命令行中计算任何文件的行数很容易,并且行数计算命令在所有现代基于 Unix 的操作系统中都是相同的,这意味着这个行数计算技巧在 Mac OS 和 Mac OS X、Linux、BSD、甚至带有 Bash shell 的 Windows。
为了我们的目的,我们将使用命令行中可用的最直接的行计数工具 wc。 wc 实用程序能够显示行数,以及显示字数和字符数。我们这里的重点当然是前者,因此我们将展示如何使用 wc 来计算作为输入提供的任何文本文件的行数。
wc 将一行定义为“由换行符分隔的字符串”,这意味着只有唯一的新行才算作一行。因此,如果一个文件中没有换行符,并且该文件只是一个巨大的句子或单个命令字符串,它将被报告为一行。
如何使用 wc 计算终端文件的行数
- 如果您还没有打开终端窗口(在 Mac 操作系统中,终端应用程序位于 /Applications/Utilities/)
- 在命令提示符处输入以下命令语法,将“文件名”替换为您要计算行数的文件
- 回车,你会看到文件的行数打印在文件名前
wc -l 文件名
您可能已经猜到了,-l 标志(小写 L)用于“行”。
例如,在桌面上名为“exampleFileToCountLines.txt”的文件上运行 wc -l 命令将如下所示:
% wc -l ~/Desktop/exampleFileToCountLines.txt
1213 /Users/Paul/Desktop/exampleFileToCountLines.txt
如您在此示例中所见,给定文本文件的行数为 1213,这意味着该文件有 1,213 行长。
wc 命令在任何基于 Unix 的现代操作系统上都可以正常工作,包括 Mac OS、Linux、FreeBSD、带有 Bash 的 Windows 等。
使用 wc 统计文件的行数、字数和字符数
您也可以在不带 -l 标志的情况下运行 wc 命令,这将按顺序显示行数、字数和字符数。喜欢:
wc /etc/hosts
9 32 214 /etc/hosts
将该命令输出与仅带有 wc -l 标志的同一命令进行对比:
wc -l /etc/hosts
9 /etc/hosts
这只是计算文本文件的行数作为输入,它根本不修改文件。如果您确实希望修改文件您可以通过以下方式手动将行号添加到文本文件命令行。
如何使用 wc 计算管道输出数据的行数
您还可以使用 wc 来计算通过管道传输到其中的任何数据的行数,例如来自 cat 或 ls 的数据:
<代码>cat /etc/hosts | wc -l
该场景中的输出将只是文件中的行数,例如“9”。
wc 命令非常简洁,您可以 阅读 wc 的手册页,以获得更多的想法和使用技巧。
这显然都适用于命令行,但还有其他方法可以获取文件的行数和字符数。
对于短文件,您可以手动计算它们,BBEdit 等第三方 Mac 应用程序默认显示行号,如果您得到 BBEdit 的小表弟 TextWrangler,那么您可以着手 也在 TextWrangler 中显示行号。您还可以为 Mac 服务制作一个 DIY Word and character counter tool .如果您碰巧已经知道要访问的文件的行号,您可以 直接跳转到 TextEdit 中的特定行号,但不幸的是 TextEdit 不显示行号,这似乎是一个疏忽。