小编Tim*_*itz的帖子

从 find 命令的输出中删除修剪目录的名称

我正在尝试使用 find 命令生成一个目录中的源文件列表,并且只生成它的一些子目录。例子:

/Source_Files
    /dontexclude
        dontexclude.h
        dontexclude.c
    /exclude
        exclude.c
        exclude.h
    main.c
    test.c
    test.h
Run Code Online (Sandbox Code Playgroud)

我想要一个以“.c”和“.h”结尾的文件列表,我想排除 /exclude 子目录的内容。

find -name '*.c' -o -name '*.h' -o -path '*/exclude' -prune 产生这个输出:

./test.h
./exclude
./test.c
./main.c
./dontexclude/dontexclude.c
./dontexclude/dontexclude.h
Run Code Online (Sandbox Code Playgroud)

如何find在没有“./exclude”的情况下生成上述列表?

shell find

4
推荐指数
1
解决办法
157
查看次数

标签 统计

find ×1

shell ×1