2

我怎样才能找到具有特定长度名称的目录?例如,我有一堆目录,其名称长度等于 33 个字符('a92e8cc611fdebcca3cf2fc8dc02c918'、'c442fb3f46d6c8bd17d27245290a9512' 等)。实用程序是否find接受“wc -c”形式的条件?或者也许应该将其他一些实用程序连接在一起?

4

3 回答 3

10

GNU find 的几种方法

$ find . -type d -name "?????????????????????????????????"

$ find /path -type d -printf "%f\n" | awk 'length==33'
于 2009-11-04T11:06:51.040 回答
0

您没有 Java 标记,但如果有,您将编写一个 FileFilter 来封装您想到的任何标准并将其传递给 java.io.File.list() 方法。如果要遍历整个目录结构树,则必须递归,但这是完全可行的。

抱歉,这不是 *nix 脚本。

Apache Commons IO JAR 有一些不错的文件和目录实用程序,可以轻松完成这项工作。

于 2009-11-04T11:04:14.030 回答
0

当然:

find dir -name '?????????????????????????????????'

(那是 33 次?)。

于 2009-11-04T11:07:44.433 回答