find命令

查找多种后缀文件:

1
find <path> [-name <pattern>] [-or -name <pattern>]

以查找所有.c和.cpp为例:

1
2
3
4
5
6
7
8
9
10
11
12
13
 ubuntu@VM-24-13-ubuntu:~/apps/ddns-serv/server$ find ../ -name "*.c" -o -name "*.cpp"
../server/main.cpp
../libhv/cpputil/iniparser.cpp
../libhv/cpputil/RAII.cpp
../libhv/cpputil/hpath.cpp
../libhv/cpputil/hurl.cpp
../libhv/cpputil/ifconfig.cpp
../libhv/cpputil/ThreadLocalStorage.cpp
../libhv/cpputil/hasync.cpp
../libhv/cpputil/hstring.cpp
../libhv/cpputil/hdir.cpp
../libhv/ssl/openssl.c
../libhv/ssl/gnutls.c

注意加引号,如果工作目录有对应文件,shell会把*.cpp扩展

find并执行命令

1
find . -name "*.cpp" -exec rm {} \;

上述名字对每个查找到的.cpp文件执行一次rm xxx.cpp;注意是每个都执行一次,而不是一次给rm多个参数。{}指代当前查找到的文件。

最后的分号是必须的,也可以是引号引起来的分号,即\;或者';'


find命令
https://jcdu.top/2023/03/06/find命令/
作者
horizon86
发布于
2023年3月6日
许可协议