17 比方说,我有一个目录dir有三个子目录dir1.. dir3。在内部,我有许多文件和其他子目录。 我想搜索一个带有*.c结尾的文件,但我只想搜索子目录“ dir / dir2”及其所有子目录。我该如何制定呢? 假设我在dir/: find . -name "*.c" 搜索所有目录。 如何限制为dir2? linux bash shell find — r source
11 查找将接受任何有效路径,因此 find ./dir2 -name '*.c' 应该可以 如果dir目录是/home/user/dir您可以找到完整路径 find /home/user/dir/dir2 -name '*.c'
17 您也可以使用-path参数find代替-name: find . -path "dir2/*.c" 这样,dir2即使dir2不是直接子目录EG,也可以在其中查找文件: # find . -path "*/dir2/*.c" ./dir_a/dir2/file.c ./dir_b/dir2/file.c — 乔希 source
4 你可以做 find dir2 -name '*.c' 你也可以 (cd dir2; find -name '*.c') 如果要查看dir1和dir3而不是dir2,则可以执行 find {dir1,dir3} -name '*.c' — 肖恩·高夫 source 3 在最后一个命令中,不需要大括号。 find dir1 dir3 -name \*.c效果很好。 — KeithB 2010年
find dir1 dir3 -name \*.c
效果很好。