1、cat命令:
功能:1)显示整个文件。
示例: $ cat fileName
2)把文件串连接后传到基本输出,如将几个文件合并为一个文件或输出到屏幕。
示例: $ cat file1 file2 > file
说明:把档案串连接后传到基本输出(屏幕或加 > fileName 到另一个档案)
cat参数详解:
-n 或 –number 由 1 开始对所有输出的行数编号
-b 或 –number-nonblank 和 -n 相似,只不过对于空白行不编号
-s 或 –squeeze-blank 当遇到有连续两行以上的空白行,就代换为一行的空白行
-v 或 –show-nonprinting
2、more命令:
以百分比的形式查看日志。
3、less命令:
跟more功能差不多,只不过less支持前后翻阅文件。
4、head命令:
功能:从文本文件的头部开始查看,head 命令用于查看一个文本文件的开头部分。
示例如下:
head example.txt 显示文件 example.txt 的前十行内容;
head -n 20 example.txt 显示文件 example.txt 的前二十行内容;
head详解:
-n 指定你想要显示文本多少行。
-n number 这个参数选项必须是十进制的整数,它将决定在文件中的位置,以行为单位。
-c number 这个参数选项必须是十进制的整数,它将决定在文件中的位置,以字节为单位。
5、tail命令:
功能:tail 命令用于显示文本文件的末尾几行。
示例如下:
tail example.txt 显示文件 example.txt 的后十行内容;
tail -n 20 example.txt 显示文件 example.txt 的后二十行内容;
tail -f example.txt 显示文件 example.txt 的后十行内容并在文件内容增加后,自动显示新增的文件内容。
tail -n 50 -f example.txt 显示文件 example.txt 的后50行内容并在文件内容增加后,自动显示新增的文件内容。
注意:
最后一条命令非常有用,尤其在监控日志文件时,可以在屏幕上一直显示新增的日志信息。
tail详解:
-b Number 从 Number 变量表示的 512 字节块位置开始读取指定文件。
-c Number 从 Number 变量表示的字节位置开始读取指定文件。
-f 如果输入文件是常规文件或如果 File 参数指定 FIFO(先进先出),
那么 tail 命令不会在复制了输入文件的最后的指定单元后终止,而是继续
从输入文件读取和复制额外的单元(当这些单元可用时)。如果没有指定 File 参数,
并且标准输入是管道,则会忽略 -f 标志。tail -f 命令可用于监视另一个进程正在写入的文件的增长。
-k Number 从 Number 变量表示的 1KB 块位置开始读取指定文件。
-m Number 从 Number 变量表示的多字节字符位置开始读取指定文件。使用该标志提供在单字节和双字节字符代码集环境中的一致结果。
-n Number 从首行或末行位置来读取指定文件,位置由 Number 变量的符号(+ 或 - 或无)表示,并通过行号 Number 进行位移。
-r 从文件末尾以逆序方式显示输出。-r 标志的缺省值是以逆序方式显示整个文件。如果文件大于 20,480 字节,那么-r标志只显示最后的 20,480 字节。 -r 标志只有
与 -n 标志一起时才有效。否则,就会将其忽略。
6、grep
标准unix/linux下的grep通过下面參数控制上下文
grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行
grep -B 5 foo file 显示foo及前5行
grep -A 5 foo file 显示foo及后5行
查看grep版本号的方法是
grep -V
假设想升级,升级的方法:最新的源代码(google或者百度搜索主页),编译安装到某个地方,比方 /home/aaa/bin/ 那么以后用的时候就用 /home/aaa/bin/grep ,或者把 /home/aaa/bin 加到PATH环境变量就可以。 假设你把最新编译好的grep覆盖到你如今grep所在文件夹,则升级自然就完成了
Linux 查找指定内容在哪个文件中
在实际的工作中,忘记配置项放在哪个文件中时,可借助命令来查询.
eg:
1、grep -r "查询内容" 文件目录 #这样查询出来的包括文件名+内容
grep -r -l "查询内容" 文件目录 #这样只显示包含内容的文件名
2、find 文件目录 -type f |xargs grep "查询内容"; #也可以达到效果
常用选项:
-E :开启扩展(Extend)的正则表达式。
-i :忽略大小写(ignore case)。
-v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。
-n :显示行号
-w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker
-c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。
-o :只显示被模式匹配到的字符串。
--color :将匹配到的内容以颜色高亮显示。
-A n:显示匹配到的字符串所在的行及其后n行,after
-B n:显示匹配到的字符串所在的行及其前n行,before
-C n:显示匹配到的字符串所在的行及其前后各n行,context
例子:
tail -n 10000 dz_error.log |grep -A 50 " ** system error "
这个是可以查询到后50行的数据