系统相关
首页 > 系统相关> > 常用的一些linux命令,让工作更有效率

常用的一些linux命令,让工作更有效率

作者:互联网

 

作为一个研发苟,linux命令是命令是必须会一些的,不一定要求会很多,至少常用的要清楚,这样排查问题或者分析才会更加有效。这篇笔记会记录一些常用的linux命令,不在于每一个命令的所有参数都拿出来细说,而是主要服务于日常使用。

一、文件中查找

该类命令包括less/zless,tail/head,grep/zgrep

less/zless

less是一个在文件中快速查找指定内容的命令,more也有类似的功能,但是more命令比较原始,功能较less少,所以掌握了less后more就没有必要了。less使用方式如下:

 

 需要查找某个子串的时候,输入‘/’字符,并在‘/’后面输入想要查找的字串,最后点击回车开始查找:

 

 如果字串在文件中多次出现,可以按n查找下一个,N查找上一个。'?'的功能与’/‘类似,只是'?'下n/N的作用与’/'相反。

另外,less打开文件后,还有一些快速跳转的功能,比如翻页为pagedown/pageup,快速跳转到文件头和文件尾分别为g/shift+g(G)。

zless是less读取压缩文本文件的版本。通常我们的线上服务会记录很多服务的日志,并且每天归档为zip文件,那么在分析之前的文件的时候less就不起作用了,这个时候就需要使用zless。

tail/head

 tail和head的作用是从文件尾部或者文件头部取出固定行数的内容,tail取文件最后n行,head取文件开头n行,由于只有取的位置不一样,这里以tail为例。

tail filename    // 默认取最后10行
tail -n  -9  filename     // 取最后9行,可以缩写为 tail -9 filename

上面两种种比较常用,下面还有两种不常用的使用方式

tail -f filename    // 可以感知文件刷新
tail -n +10 filename    // 获取第10行及以后的行

# 例子
cat test | wc -l    // 12,test文件总共12行
tail -n +10 test   
/*
a,b,c,d,e,111
a,s,e,w,f,222
a,s,e,w,f,222
*/

 

grep/zgrep

grep是从文件中过滤包含指定字串的行,zgrep是从文本文件的压缩文件中过滤。zgrep和grep的功能是类似的,这里以grep说明。

通常,如果要找到子串,可以使用less命令,再使用‘/’符号匹配。但这样步骤多了,另一种快速的方法就是使用grep命令。

简单用法

grep '子串‘ filename  

上面的用法比较简单,适用于只需要找到包含子串的某一行的情况。但是很多情况下,我们还需要当前行后面的几行,比如用用抛出的异常去错误日志里匹配的时候,我们还会想要看到错误栈信息以便于分析问题,这个时候可以使用下面的方式

grep -A '子串’ filename 

 上面的这种方式处理可以返回子串所在的行,还可以返回紧挨着子串的下面一行。其中的参数A意思为After。同样的参数还有C和B,C代表context,返回子串所在行的前面n行和后面n行;B代表before,返回子串所在行前面的n行:

grep -B '子串’ filename 
grep -C '子串’ filename 

 

二、文件查找命令

 

 

 

 

 更新中。。。

 

标签:子串,文件,常用,grep,less,filename,tail,linux,有效率
来源: https://www.cnblogs.com/zhangcaiwang/p/14388272.html