find 是一个相当重要的查询文件绝对路径的指令
语法:find <路径> <选项> [表达式]
find 查看文件的特点:
1、从指定路径下递归向下搜索文件。
2、支持按照各种条件方式搜索
3、支持对搜索得到的文件再进一步的使用指令操作(例如:删除、统计大小、复制等)。
重要选项:

-name 根据文件名寻找文件
-user 根据文件拥有者寻找文件
-group 根据文件所属组寻找文件
-perm 根据文件权限寻找文件
-size 根据文件大小寻找文件[+_ SizeK]
-type 根据文件类型寻找文件,常见类型有:f(普通文件)、c(字符设备文件)、b(块设备文件)、l(链接文件)、d(目录)
-o 表达式或
-and 表达式与
-not  表达式非

语法2:
find [路径] [参数] [表达式] -exec 指令 {} \;
{} 代表find找到的文件
\转意
;表示本行指令结束

例:find /etc -name "host*" -exec du -h { } \;

2、常用的文件操作指令
head/ tail more /less 文件的查看
wc 统计文件的行、单词数、字符数、字节数

-c 只显示文件中的字节数。
-m 只显示文件中字符数。
-l 只显示行数。
-w 只显示单词数
-L 只显示文件中的最长行的长度


grep 显示文件中匹配关键字的行
grep [选项] <关键字> <文件...>
常用选项:

-c 计算匹配关键字的行数
-i 忽略字符大小写的差别
-n 显示匹配的行及其行号
-s 不显示不存在或不匹配文件的错误信息
-h 查询多个文件时不显示文件名
-l 查询文件时只显示匹配字符所在的文件名


sort 按序重排文本并送显示
sort [选项] <文件>

-o <输出文件> 将排序后的结果存入指定的文件
-r 以相反的顺序来排序
-t <分割字符>指定排序时所用的栏位分隔字符。
+ <起始栏位>-<结束栏位>以指定的栏位来排序,范围由起始栏位的后一栏到结束栏位


uniq 去除文件中相邻的重复的行
uniq [选项] [文件]

-c 在每行旁边显示该行重复出现的次数
-d 仅显示重复出现的行列
-u 仅显示出一次的行列


tr  转换字符
cat 文件|tr [选项]

-s 把连续重复的字符以单独一个字符表示


cut 显示文件中的某一列
cut <选项> 文件

-d 指定分隔符
-f 指定显示某一列
-c 以字符为单位进行分割。
-b 以字符为单位进行分割



paste 将文件按列拼接,合并文件的列
paste [选项] [文件1] [文件2]
paste 指令会把每个文件以列对列的方式,一列列的加以合并。

-d 用指定的间隔字符取代跳格字符
-s 串列进行而非平行处理

压缩工具:

gzip man.config
gunzip man.confif.gz
bzip2 httpd.conf.bak
bunzip2 httpd.conf.bk.bz2
zcat:直接显示压缩文件的内容
zless:直接逐行显示压缩文件的内容
bzcat:直接显示压缩文件的内容
bzless:直接逐行显示压缩文件的内容