locate查询系统上预建的文件索引数据库
索引数据库:
/var/lib/mlocate/mlocate.db
工作特点:
查找速度快
模糊查找
非实时查找
搜索的式文件的全路径,不仅仅是文件名
可能只搜索用户具备读取和执行权限的目录
参数:
-i:不区分大小写
-n:只列举前n行
-r:使用正则表达式
find:实时查找工具
工作特点:
查找速度慢,非常消耗资源
精确查找
实时查找
可能只搜索用户具备读取和执行权限的目录
默认递归搜索
查找条件
指搜索层级
-maxdepth level 最大搜索目录深度,指定目录为第1级
-mindepth level 最小搜索目录深度
根据文件名和inode查找:
-name “文件名称”:支持使用glob
*, ?, [], [^]
-iname “文件名称”:不区分字母大小写
-inum n 按inode号查找
-samefile name 相同inode号的文件
-links n 链接数为n的文件
-regex “PATTERN”:以PATTERN匹配整个文件路径字符串,而不仅仅是文件名称
根据文件类型查找:
-type TYPE:
f: 普通文件
d: 目录文件
l: 符号链接文件
s:套接字文件
b: 块设备文件
c: 字符设备文件
p: 管道文件
空文件或目录
-empty
组合条件:
与:-a
或:-o
非:-not, !
德·摩根定律:
(非 A) 或 (非 B) = 非(A 且 B)
(非 A) 且 (非 B) = 非(A 或 B)
示例:
!A -a !B = !(A -o B)
!A -o !B = !(A -a B)
find /app -type d -empty
根据文件大小来查找:
-size [+|-]#UNIT
常用单位:k, M, G,c(byte)
#UNIT: (#-1, #]
如:6k 表示(5k,6k]
-#UNIT:[0,#-1]
如:-6k 表示[0,5k]
+#UNIT:(#, ∞ )
如:+6k 表示(6k ,∞)
根据时间戳:
以“天”为单位;
-atime [+|-]#,以atime为准
#: [#,#+1)
+#: [#+1, ∞ ]
-#: [0,#)
-mtime:以mtime为准
-ctime:以ctime为准
以“分钟”为单位:
-amin
-mmin
-cmin
压缩、解压缩及归档工具
file-roller:图形化压缩工具
compress:压缩.Z格式文件
zip:压缩.zip格式
gzip:压缩.gz格式,比.Z压缩的更小,支持1-9的压缩比例,压缩比越大压缩的文件越小
zcat:不解压缩的前提下查看压缩文件
bzip2:压缩.bz2格式,比.gz压缩的更小,也支持压缩比,默认9级别
bcat:不解压的前提下查看压缩文件
xz:更强劲、更新,功能同上
xzcat:同上,预览
tar:归档,打包
-zcpvf:打包压缩一个保留属性并且显示过程指定文件名.tar.gz/xz/bz2
-x:解压缩
-C:指定解压路径
-T:指定文件
-X:过滤压缩目录文件时不需要的文件
split -b [切割大小] -d [压缩文件] [文件前缀] 压缩包切割
cat [文件名] > {文件名}:还原切割
本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96372