文件查找
-
locate : 非实时查找(数据库查找)
数据库文件: /var/lib/mlocate/mlocate.db
更新数据库命令: updatedblocate
选项:
-i : 不区分大小写
-n N: 只查看前N个匹配的项目
-r : 使用正则表达式
-
find : 实时查找
find [option]... [查找路径] [查找条件] [处理动作]
- 查找条件选项:
- 指定搜索层级:
-maxdepth level : 最大搜索目录深度,指定目录为第1级
-mindepth level : 最小搜索目录深度 - 根据文件名和inode查找:
-name "文件名" : 支持通配符
-name "文件名" : 忽略大小写
-inum n: 按inode号查找
-samefile name: 查找相同inode号的文件
-links n : 链接数为n的文件
-regex "PATTERN" : 使用正则匹配整个文件路径字符串,而不仅仅是文件名 - 根据属主、属组查找:
-user username : 查找属主为指定用户名的文件
-group groupname : 查找属组为指定组的文件
-uid ueserid : 查找属主为指定uid的文件
-gid groupid : 查找属组为指定gid的文件
-nouser : 查找没有属主的文件
-nogroup : 查找没有属组的文件 - 根据文件类型查找:
-type type :
f : 普通文件
d : 目录文件
l : 符号链接文件
s : 套接字文件
b : 块设备文件
c : 字符设备文件
p : 管道文件 - 组合条件:
-a : 与
-o : 或
-not,! : 非 - 根据文件大小来查找:
-size [+ | -]#UNIT
单位: k,M,G,c(byte)
#UNIT: (#-1,#)
如: 6k 表示5-6k之间(不包括5k和6k)
-#UNIT: (0,#-1)
如: -6k 表示0-5k之间(不包括6k)
+#UNIT: (#,∞)
如: +6k 表示(6k-无限)(不包括6k) - 根据时间戳查找:
以'天'为单位:
-atime [+ | -]n,
-mtime,-ctime
n: [n,+1]
+n: [n+1,∞]
-n: [0,n]
以'分钟'单位:
-amin , -mmin , -cmin -
根据权限查找:
-perm [/ | -]mode
mode : 精确权限匹配
/mode : 任何一类(u,g,o)对象的权限中只要有一位能匹配即可(或关系)
-mode : 每一类对象都必须拥有指定的权限(与权限)
0 : 表示不关注 - 处理动作
-print : 默认的动作,打印结果至屏幕
-ls : 类似于'ls -l'命令
-delete : 删除查找到的文件(慎用!)
-fls file : 将查找到的所有文件的长格式信息保存至指定文件中
-ok COMMAND {} \; : 对查找到的每个文件执行由COMMAND指定的命令(交互式)
-exec COMMAND {} \; : 对查找到的每个文件执行由COMMAND指定的命令(非交互,直接执行)
{} : 引用查找到的文件名称本身
find传递查找到的文件至后面指定的命令时,查找到所有符合条件的文件一次性传递给后面的命令
-
压缩、解压缩以及归档工具
-
gzip/gunzip
- gzip [option]... file
-d : 解压缩,相当于gunzip
-c : 将压缩或解压缩的结果输出至标准输出
-# : 1-9,指定压缩比,值约到压缩比越大
- gzip [option]... file
-
bzip2/bunzip2
- bzip2 [option]... file
-k : 保留源文件
-d : 解压缩
-# : 1-9,压缩比,默认为9
- bzip2 [option]... file
-
xz/unxz
- xz [option]... file
-k : 保留源文件
-d : 解压缩
-# : 1-9,压缩比,默认为6
- xz [option]... file
-
tar
- tar [option]...
选项:
-c : 建立新的备份文件
-f : 备份文件
-v : 显示过程
-x : 从备份文件中还原文件
-z,-j,-J : 备份后通过gzip,bzip2,xz压缩
-C : 指定解压缩的目录 - 例:
- (1)创建归档并使用gzip压缩
tar -zcvf file.tar.gz file - (2)查看tar包内的文件
tar -ztvf file.tar.gz - (3)解压缩到指定目录
tar -zxvf file.tat.gz -C /root
<br>
- (1)创建归档并使用gzip压缩
- tar [option]...
-
cpio : 复制文件从或到归档
- cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结尾的文件
- cpio [选项] > 文件名或者设备名
- cpio [选项] < 文件名或者设备名
- 选项:
-o : 将文件拷贝打包成文件或者将文件输出到设备上
-i : 解包,将打包文件解压或将设备上的备份还原到系统
-t : 预览,查看文件内容或者输出到设备上的文件内容
-v : 显示过程
-d : 解包生成目录,在cpio还原时,自动建立目录
- 例:
- (1)将etc目录备份
find ./etc -print | cpio -ov >etc.cpio - (2)内容预览
cpio -tv < etc.cpio - (3)解包文件
cpio -idv < etc.cpio
- (1)将etc目录备份
- cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结尾的文件
来源:51CTO
作者:三和梁朝伟
链接:https://blog.51cto.com/bigboss/2045114