bash - 真正的 bash 行数

标签 bash wc

我正在解析一个临时文件,其行想要删除,因此我运行:tr '\n' ' ' < temp > temp2 。现在当我 wc -l temp2它返回 0 行而不是 1 行,这对我来说是出乎意料的。

查看手册后,wc -l仅计算换行符而不计算行数。它的行为很好,但如果您不知道文件的最后一行是否包含换行符,则可能会出现问题。

有没有任何工具或解决方法可以计算行数,即使它们没有换行?

最佳答案

UNIX 文本文件 must always have a trailing newline 。如果没有它,许多工具将无法处理最后一行,正如您所看到的那样。我不会寻找可以处理它的工具,而是修复文件中的错误。

{ tr '\n' ' ' < temp && echo; } > temp2

关于bash - 真正的 bash 行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50611235/

相关文章:

linux - 无法在单行文件上使用 Linux wc

linux - 计算PowerShell中的字符,单词和行数

c - C 程序的文件输出在计算行数时表现异常

Unix 命令获取 csv 文件中的行数

python - Linux Red Hat 上的 Korn Shell 脚本

BASH如何在脚本终止时执行命令?

arrays - bash,返回数组中最小条目的位置

linux - 如何在运行 shell 脚本时提示用户以 root 身份登录

linux - 对目录中的文件使用 wc 后排序

bash - 为什么 bash "test -n"命令在 "! test -z"工作时给出 $@(美元)位置参数的错误结果?