给定一个文件列表files.txt,我可以得到这样的大小列表:
cat files.txt | xargs ls -l | cut -c 23-30
Run Code Online (Sandbox Code Playgroud)
产生这样的东西:
151552
319488
1536000
225280
Run Code Online (Sandbox Code Playgroud)
如何获得所有这些数字的总和?
假设我想计算项目中的代码行数.如果所有文件都在同一个目录中,我可以执行:
cat * | wc -l
Run Code Online (Sandbox Code Playgroud)
但是,如果有子目录,则不起作用.为此,cat必须具有递归模式.我怀疑这可能是xargs的一项工作,但我想知道是否有更优雅的解决方案?
我正在尝试计算项目中写的字数.文件夹中有几个级别,其中包含大量文本文件.
任何人都可以帮我找到一个快速的方法来做到这一点?
bash或vim会很好!
谢谢
我有一个包含数千个文件的目录(目前为100K)。使用时wc -l ./*,我会得到:
c1 ./test1.txt
c2 ./test2.txt
...
cn ./testn.txt
c1+c2+...+cn total
Run Code Online (Sandbox Code Playgroud)
因为目录中有很多文件,所以我只想查看总数而不是详细信息。有什么办法吗?
我尝试了几种方法,但出现以下错误:
Argument list too long
我被要求获取某些目录中所有文件的行数,路径将作为终端参数提供.
我目前的解决方案是:
wc -l "$1/"*
Run Code Online (Sandbox Code Playgroud)
但这样做也给了我一些不必要的输出,如下所示:
wc: '/home/user/Desktop/Dir': Is a directory
Run Code Online (Sandbox Code Playgroud)
那么如何只打印实际文件而不是目录的结果呢?然后,我怎么才能显示最多10分钟前编辑过的?