gpt4 book ai didi

linux - 我们如何连接 Linux 中不包括目录的所有文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:38:11 27 4
gpt4 key购买 nike

我正在尝试获取目录中所有文件的总行数。

我尝试执行以下操作:

cat * | wc -1

获取目录中的总行数,但它给了我一条消息,说有些文件是目录。 ('cat : some_dir: 是一个目录')

连接所有文件时如何排除目录?

最佳答案

要得到总和,您可以尝试下面的操作,获取每个文件的数量并对其求和

find . -type f -exec wc -l {} \; | awk '{ SUM += $1} END { print SUM }'

添加 -maxdepth 1 进一步跳过扫描

-type f 只过滤文件

这是测试结果:

$ seq 1 4 >file1

$ seq 1 5 >file2

$ cat file1
1
2
3
4

$ cat file2
1
2
3
4
5



$ find . -type f -exec wc -l {} \;
5 ./file2
4 ./file1

$ find . -type f -exec wc -l {} \; | awk '{ SUM += $1} END { print SUM }'
9

$ find . -type f -exec wc -l {} +
5 ./file2
4 ./file1
9 total

$ find . -type f -exec wc -l {} + | awk 'END{print $1}'
9

关于linux - 我们如何连接 Linux 中不包括目录的所有文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46047622/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com