Linux运维命令(001)---find

Linux find命令用来在指定目录下查找文件

用法 :【find】 +【path】+ 【-】 + 【expression】

find+要查找的路径+连接符+表达式

 

【path】

      1、【.】表示当前目录及其下子目录

      2、【/】根目录

Demo01 查找/opt目录下的所有txt文件

[root@izuf60cwv8v7l61gfpkffaz opt]# find . -name "*.txt"
./test.txt
./demo2/test2.txt
Demo02 查找根目录下nginx配置文件nginx.conf

[root@izuf60cwv8v7l61gfpkffaz nginx]# find / -name "nginx.conf"
/usr/local/gov_defence_agent/yshttp/conf/nginx.conf
/etc/nginx/nginx.conf

【-】

find 根据下列规则判断 path 和 expression

在命令列上第一个 【-】之前的部份为 path,之后的是expression

如果 path 为空则使用当前路径

如果 expression 是空字串则使用 -print 为预设 expression

Demo03 path为空的情况,查找当前目录及子目录下的所有txt文件

[root@izuf60cwv8v7l61gfpkffaz opt]# find -name "*.txt"
./test.txt
./demo2/test2.txt
Demo04 如果expression为空,默认使用-print代替,从以下代码可以看得出来,效果是一样的

[root@izuf60cwv8v7l61gfpkffaz opt]# find . -print
.
./test.txt
./demo2
./demo2/test2.txt
[root@izuf60cwv8v7l61gfpkffaz opt]# find . 
.
./test.txt
./demo2
./demo2/test2.txt

【expression】

expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。

-mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件

-amin n : 在过去 n 分钟内被读取过

-anewer file : 比文件 file 更晚被读取过的文件

-atime n : 在过去n天内被读取过的文件

-cmin n : 在过去 n 分钟内被修改过

-cnewer file :比文件 file 更新的文件

-ctime n : 在过去n天内被修改过的文件

-empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name

-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写

-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写

-size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。-type c : 文件类型是 c 的文件。

【未完待续】

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(Linux运维)