访问手机版  

Linux常用命令|Linux培训学习|考试认证|工资待遇与招聘,认准超级网工!

招聘|合作 登陆|注册

网络工程师培训

当前位置:网络工程师 > 技术课程 > linux > 热点关注 > linux常用命令

linux查询相关命令(find、grep、wc)

时间:2019-07-26

linux命令_linux 关机命令_linux vi命令

我们经常需要查找文件、统计信息,这就需要用到find、grep、wc等命令。

grep命令

grep是linux下常用的文本查找工具之一(其他还有awk、sed等);其是支持正则表达式的多用途文本搜索工具,常与其他命令组合使用(通过管道|)。

grep [选项] [匹配模式/查询内容] [文件...]

-c

只输出匹配行的数量

搜索时忽略大小写

不支持正则表达式,按字符串字面意思搜索

查询多文件时不显示文件名

只列出符合匹配的文件名,而不列出具体的匹配行

列出所有匹配行,并显示行号

不显示不存在或无匹配文本的错误信息

显示不包含匹配文本的所有行

匹配整词

linux命令_linux vi命令_linux 关机命令

匹配整行

递归搜索当前及子目录

禁止输出任何结果,以退出状态表示搜索是否成功

打印匹配行距文件头部的偏移量,以自己为单位

与-b结合使用,打印匹配词距头部文件的偏移量

支持扩展正则表达式

pattern正则表达式主要参数:

简单示例

$grep ‘test’ *.txt

显示所有txt文件中包含 test的行。

$grep ‘test’ aa bb cc

显示在aa,bb,cc文件中包含 test的行。

$grep ‘[a-z]\{5\}’ aa 或grep -E ‘[a-z]{5}’ aa

显示所有包含每个字符串至少有5个连续小写字符的字符串的行。

linux 关机命令_linux命令_linux vi命令

$grep ‘w\(es\)t.*\1′ aa

$ grep 'w/(es/)t.*/1' aa 如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*),这些字符后面紧跟着另外一个es(/1),找到就显示该行。如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*)linux命令,这些字符后面紧跟着另外一个es(/1),找到就显示该行。【rewriterule ^(.*)$ /blog/$1】重写规则,最重要的部分,意思是当上面的rewritecond条件都满足的时候,将会执行此重写规则,^(.*)$是一个正则表达的匹配,匹配的是当前请求的url,^(.*)$意思是匹配当前url任意字符,.表示任意单个字符,*表示匹配0次或n次(n>0),后面/blog/$1是重写成分,意思是将前面匹配的字符重写成/blog/$1,这个$1表示反向匹配,引用的是前面第一个圆括号的成分,即^(.*)$中的.* ,其实这儿将会出现一个问题,后面讨论。

find命令

find命令是用来在给定的目录下查找符合给定条件的文件

find [OPTIONS] [查找起始路径] [查找条件] [处理动作]

OPTIONS参数:-P、-L、-H:控制软连接的对待方式,用的不多。

查找路径:就是个目录路径linux命令,相对和绝对都可以。

查找条件:

-size [+,-][b,k,M,G] 按文件的修改时间等查找

时间属性{-atime/-ctime/-mtime/-amin/-cmin/-mmin} [-/+]n

不带符号表示符合该数量的,带-表示符合该数量以后的,带+表示符合该数量以前的。

-perm MODE 按文件权限查找

按文件所属组

组合查找

linux命令_linux 关机命令_linux vi命令

处理动作

wc命令

wc统计文件里面有多少单词、多少行、多少字符。

wc [-lwm]选项与参数:

这些选项可以组合使用。 输出列的顺序和数目不受选项的顺序和数目的影响。总是按下述顺序显示并且每项最多一列。

行数、字数、字节数、文件名

例子:

ls -l | wc -l #当前目录下的文件数

ps -ef | grep procName | wc -l # 进程数量

wc -l `find -name *.c` # .c文件数量

 上一个教程:Linux系统基本命令