如何计算此目录中所有文件的行数?

Ale*_*lex 2 linux unix grep

我想计算此目录及其所有子目录中所有文件的行数,但排除目录“public”、“modules”和“templates”。

如何?

osg*_*sgx 5

 find . -type f |grep -v "^./public" |grep -v "^./modules"|grep -v "^./templates"|xargs cat |wc -l
Run Code Online (Sandbox Code Playgroud)
  1. 列出当前目录下的所有文件 find . -type f
  2. 使用 grep -v 从“排除”目录中过滤掉文件
  3. xargs将从标准输入读取文件列表并将所有文件作为选项传递给cat.
  4. cat 将所有文件打印到标准输出
  5. wc 将计算行数。

如果要单独计算每个文件中的行数,请更改xargs cat |wc -lxargs wc -l