在树上/通过树查找文件

在树上/通过树查找文件

我很喜欢但是,我想将它与 find 之类的东西结合起来......特别是,我希望能够将一些要查找的文件作为参数传递给它(或类似的脚本),例如,*.c这样它只打印以 .c 结尾的文件和指向它们的路径。

因此,如果我们tree返回:

.
├── bar
│   ├── b.c
│   └── c.py
└── foo
    └── a.py

然后tree -find "*".c应该返回

.
└── bar
    └── b.c

是否有一个参数允许这样做tree?如果没有,如何实现?

答案1

对于您描述的情况,可以使用tree命令自己的模式匹配选项来实现。例如给定

$ tree dir
dir
├── bar
│   ├── b.c
│   └── c.py
└── foo
    └── a.py

2 directories, 3 files

然后

$ tree -P '*.c' --prune dir
dir
└── bar
    └── b.c

1 directory, 1 file

注意模式的引用'*.c',以防止 shell 将其扩展为当前目录中匹配文件的列表。

相关内容