【发布时间】:2019-03-08 08:20:01
【问题描述】:
我正在尝试计算当前文件夹及其每个子文件夹中的所有文件。
find . -type f \(! -iname ".*" \) -print
【问题讨论】:
我正在尝试计算当前文件夹及其每个子文件夹中的所有文件。
find . -type f \(! -iname ".*" \) -print
【问题讨论】:
只需点 wc -l 就可以了:
find . -type f -not -path "*/\.*" | wc -l
【讨论】:
find . -type f -not -path "./.*" | wc -l
解释:
在当前目录(.) 中查找文件类型(f) 中没有以./.(./ 开头的路径的所有内容) 位于 find 的每个输出项之前,这意味着当前目录),然后将输出提供给wc,这是一个计数程序,-l 参数告诉wc 计算行数。
【讨论】:
path 而不是name,这是有效的,在我的系统上尝试过。感谢您的提示。
你可以使用这个find命令:
find -type f ! -regex ".*/\.[^/]+$" | wc -l
它将在当前目录中查找文件名不是以. 开头的所有文件,即隐藏文件。
【讨论】: