我很喜欢树但是,我想将它与 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 将其扩展为当前目录中匹配文件的列表。