如何打印文本文件每行中的字符数

vik*_*368 67 unix shell awk sed

我想使用unix命令打印文本文件每行中的字符数.我知道powershell很简单

gc abc.txt | % {$_.length}
Run Code Online (Sandbox Code Playgroud)

但我需要unix命令.

Fre*_*Foo 128

使用Awk.

awk '{ print length }' abc.txt
Run Code Online (Sandbox Code Playgroud)

  • 我认为`打印长度;`等同于POSIX以及http://pubs.opengroup.org/onlinepubs/9699919799/utilities/awk.html (7认同)
  • 这比对每一行应用 wc -c 快几个数量级! (2认同)

Jan*_*dec 14

while read -r line; do echo ${#line}; done < abc.txt
Run Code Online (Sandbox Code Playgroud)

它是POSIX,因此应该可以在任何地方使用.

编辑:根据William的建议添加-r.