centos find(centos官网)

很多朋友对于centos find和centos官网不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

centos7,find 命令的 7 种用法

在Linux世界中,find命令是开发人员不可或缺的工具,特别是在CentOS 7中。它在技术面试中也常常被提及,例如,解决如何删除一年未访问的日志文件问题。以下是find命令的七个实用场景:

1.搜索文件:按名称或正则表达式查找,如查找所有pdf格式的书籍(-name"*.pdf"-type f)。

2.查找类型:指定-type选项可查找不同类型的文件,如目录(-type d)或符号链接(-type l)。

3.时间戳查找:根据atime、mtime或ctime搜索文件,如查找atime超过一年的文件(-atime+365)。

4.按大小查找:-size选项用于查找特定大小的文件,如10MB到1GB的文件。

5.权限查找:使用-perm选项按指定权限查找,如具有777权限的文件。

6.所有权查找:-user选项用于查找特定用户的所有文件,如yang用户的所有文件。

7.执行操作:-exec命令在找到文件后执行,如删除文件(-exec rm-rf{}\;)。

掌握这些用法,无论是面试还是日常运维,你都能自信地应对关于find命令的问题。现在,你可以根据这些知识,轻松解答那个关于删除日志文件的问题了。试试看,你已经具备了解决它的能力了。

Centos文件搜索命令的讲解

1、locate--->文件查找事先生成的数据库,模糊查找,updatedb更新locate数据库

-i:忽略文件名的大小写

-n:只显示前n行eg:locate-n3passwd

2、find---->实时查找,精确匹配文件名

find[DIR...][CRIERIA][ACTION...]

DIR:/root/home..(默认当前目录)

ACTION;

-print(默认)

-ls

-okCOMMAND交互式执行命令

-execCOMMAND非交互式执行命令

xargs从标准输出中执行和创建命令

eg;find/root-name"[[:alpha:]][[:digit:]]"-execmv{}{}\;//{}代表前面查找的结果,后面必须用\;结尾

find/root-name"[[:alpha:]][[:digit:]]"|xargschmod755

CRIERIA:

-name:精确到指定的文件名

-iname:根据文件名查找,但不区分大小写

-user:根据属主查找

-group:根据属组查找

-uid:根据uid查找

-gid:根据gid查找

在指定时间段里查找:

-atime:[+/-]N(accesstime):+-表示---(+)----N---(-)----currentday

eg:find-atime-3-execls-l{}\;

-mtime:(modificationtime)同上

-ctime(changetime)同上

-amin以分种为单位,同上

-mmin

-cmin

-anewera.txt比a.txt更近的访问

eg:find-anewersh01.sh-execls-l{}\;

-newer相当于modificationtime

-cnewer相当于changetime

-type:按照类型查找

d(目录),l(链接文件),f(普通文件),s(套接文件),

b(块设备),c(字符设备),p(命令管道文件)

eg:find/var-typel-execls-l{}\;

-size:按照大小查找

[+/-]N

-perm[+/-]mode根据权限查找

mode755

-222每一类用户都要匹配

eg:find/tmp/myscrip-perm-001

/222某一个用户只要有一类权限的即可

-nouser:没有用户

eg:find/-nouser查看没有用户名的文件,一般这种文件有一定的危险性

-nogroup:没有组的

查找条件连接:

-a:&&通常可以省略

eg:find-userroot-typef-execls-dl{}\;

-o:||

eg:find-usernamed-o-typed-execls-ld{}\;

-notor!:!

eg:find-not\(-typed-a-userroot\)-execls-ld{}\;

-ls-l`find/-namepasswd`

文件名通配:*任意一个字符,?单个字符,[]

eg:find/tmp-namea*//查找以a开头的文件

CentOS中的find命令详解

1.在某目录下查找名为elm.cc的文件

find/home/lijiajia/-name elm.cc

2.查找文件名中包含某字符(如elm)的文件

find/home/lijiajia/-name'*elm*'

find/home/lijiajia/-name'elm*'

find/home/lijiajia/-name'*elm'

3.根据文件的特征进行查询

find/home/lijiajia/-amin-10

#查找在系统中最后10分钟访问的文件

find/home/lijiajia/-atime-2

#查找在系统中最后48小时访问的文件

find/home/lijiajia/-empty

#查找在系统中为空的文件或者文件夹

find/home/lijiajia/-group cat

#查找在系统中属于groupcat的文件(试了,命令不对。)

find/home/lijiajia/-mmin-5

#查找在系统中最后5分钟里修改过的文件

find/home/lijiajia/-mtime-1

#查找在系统中最后24小时里修改过的文件

find/home/lijiajia/-nouser

#查找在系统中属于作废用户的文件(不明白是什么意思)

find/home/lijiajia/-amin 10

#查找在系统中最后10分钟访问的文件

find/home/ftp/pub-user lijiajia

#查找在系统中属于lijiajia这个用户的文件

(PS:以上都是在/home/lijiajia/文件夹下进行的操作)

4.使用混合查找方式查找文件

find/tmp-size+10000000c-and-mtime+2

#查找/tmp目录中大于10000000字节并且在48小时内修改的某个文件

find/tmp-user tom-or-user george

#查找/tmp目录中属于tom或者george这两个用户的文件

find/tmp!-usr fred

#查找/tmp目录中不属于fred的文件

5.查找并显示文件

find/home/lijiajia/-name'elm.cc'-ls

#在目录下查找名为elm.cc的文件,并显示这些文件的信息

阅读剩余
THE END