一.Linux文件查找
本章介绍的有locate和find的命令的使用以及压缩解压缩工具
1.文件查找,跟以前我们所学的grep fgrep egrep 类似,grep属于文本过滤,搜索工具 然而文件查找就find和locate 他们有一点区别:
find :实时查找进行文件匹配,由于进行路径匹配所以查找速度略慢,
语法:【opition】….[查找路径][查找条件][处理动作]
查找路径:指定具体目标路径;默认为当前目录
查找条件:指定的查找标准,可以文件名、大小、类型、权限等标准进行;默认为找出指定路径下的所有文件
处理动作:对符合条件的文件做操作,默认输出至屏
根据文件名和inode查找:
-name “文件名称”:支持使用glob *, ?, [], [^] 文件名称一定加引号!
-iname “文件名称”:不区分字母大小写
-inumn 按inode号查找
例如:find / -name “*.txt” 搜索根目录下所有以.txt结尾的文件
根据属主、属组查找 :
-user USERNAME:查找属主为指定用户(UID)的文件
-group GRPNAME: 查找属组为指定组(GID)的文件
-uid UID:查找属主为指定的UID号的文件
-gid GID:查找属组为指定的GID号的文件
-nouser :查找没有属主的文件
-nogroup :查找没有属组的文件
例如:找出/var目录下,属主不是root,且文件名不以f开头的文件
find /var \( -not -user root -a -not -name ‘f*’ \) -ls
根据文件类型查找:-type TYPE: 如: find /etc/ -type f
f: 普通文件
d: 目录文件
l: 符号链接文件
s:套接字文件
b: 块设备文件
c: 字符设备文件
p: 管道文件
如: find /etc/ -type f
根据文件大小来查找:
-size [+|-]#UNIT 常用单位:k, M, G #UNIT: (#-1, #],如: 6k (5k-6k]
-#UNIT: [0,#-1], 如: -6k (0-5k]
+#UNIT: (#,∞), 如: +6k (6k,∞)
处理动作:
-print:默认的处理动作,显示至屏幕;
-ls:类似于对查找到的文件执行“ ls -l”命令
-delete:删除查找到的文件;
-ok COMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令;对于每个文件执行命令之前,都会交互式要求用户确认
-exec COMMAND {} \; 对查找到的每个文件执行由COMMAND指定的命令
{}: 用于引用查找到的文件名称自身find传递查找到的文件至后面指定的命令时,查找到所有符合条件的文件一次性传递给后面的命令
2.文件压缩与解压缩
compress/uncompress: 对应 .Z 结尾的压缩格式文件;
gzip/gunzip: 其对应的是 .gz 结尾的压缩格式文件;
bzip2/bunzip2: 其对应的是 .bz2 结尾的压缩格式文件;
xz/unxz: 其对应的是 .xz 结尾的压缩格式文件;
2.1 gzip/gunzip (默认压缩,解压时会删除源文件)
语法: gzip[OPTION]… FILE …
-d: 解压缩,相当于gunzip
-c: 将压缩或解压缩的结果输出至标准输出p
2.2 bzip2/bunzip2 (默认压缩,解压时会删除源文件)
语法: bzip2[OPTION]… FILE …
-d: 解压缩,相当于bunzip2
-k: keep 保留源文件
2.3 xz/unxz/(压缩比最强)
语法: xz[OPTION]… FILE …
-k : keep, 保留原文件
-d:解压缩
-#:1-9,压缩比,默认为6
2.4 tar 工具
语法: tar [OPTION]…
(1) 创建归档
tar -c -f /PATH/TO/SOMEFILE.tar FILE…
tar cf/PATH/TO/SOMEFILE.tar FILE…
(2) 查看归档文件中的文件列表
tar -t -f /PATH/TO/SOMEFILE.tar
(3) 展开归档
tar -x -f /PATH/TO/SOMEFILE.tar
tar -x -f /PATH/TO/SOMEFILE.tar -C /PATH/
结合压缩工具实现:归档并压缩
-j: bzip2, -z: gzip, -J: xz
二 软件包管理 就拿rpm来说吧
rpm 执行安装包
二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由 RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。
常用命令组合:
-ivh:安装显示安装进度–install–verbose–hash
-Uvh:升级软件包–Update;
-qpl: 列出RPM软件包内的文件信息
-qpi:列出RPM软件包的描述信息
-qf:查找指定文件属于哪个RPM软件包
-Va:校验所有的 RPM软件包,查找丢失的文件
-e:删除包
rpm -q //查询程序是否安装
rpm -ivh –test 用来检查依赖关系;并不是真正的安装;
rpm -Uvh –oldpackage 新版本降级为旧版本
rpm -qa [搜索指定rpm包是否安装]
rpm -ql [搜索rpm包]–list所有文件安装目录
rpm -qpi [查看rpm包]信息
rpm -qpf [查看rpm包]–file
rpm -qpR file.rpm [查看包]依赖关系
rpm2cpio file.rpm |cpio -div [抽出文件]
rpm -ivh file.rpm [安装新的rpm]–install–verbose–hash
1.fc4.i386.rpm
rpm -Uvh file.rpm [升级一个rpm]
rpm -e file.rpm [删除一个rpm包]
原创文章,作者:gd1479,如若转载,请注明出处:http://www.178linux.com/77881