1.文件阅读命令
head:显示文件起始的若干行。 head -n x file
tail:显示文件倒数的若干行。 tail -n x file 联合使用,查看第a行到第b行 head -n b file | tail b-a+1
tailf : 文本文件若有追加,实时显示。等价于 tail -f file,适用于查看日志文件。
cat:查看文件内容。
more:分屏显示文本。
less:与more十分相似,但less允许往回翻看。
2.vim 文本编辑器
vim 文件名,即可打开要编辑的文件,若不存在则自动新建。
打开后首先是命令模式。命令模式下按键'dd'即可删除所在行。
按‘ i’键进入插入模式。
编辑完毕后,按‘esc’ 退回到命令模式,然后":w"保存文件 “:wq”保存并退出
“:q”退出vim “:q!”放弃修改并退出。
文本查找功能:</>字符串 向前查找指定字符串 <?>向后查找指定字符串。
vim -b file //二进制模式打开文本文件,可用于排查windows格式与linux格式不兼容带来的特殊字符问题。
3.搜索所在行
grep content file :在文件中搜索带有content内容的行,文件可以是单个文件、目录或符合通配符的多个指定文件。
3.1参数:
-i :ignore 大小写
-v: invert,查找不匹配的行
-r:recursive,递归查找,用于目录下查找。
-C:查看命中行的前后几行。
-A :即after,查看命中行的后面几行。
-E: 使用正则表达式。
--color :命中的子串会有颜色。
3.2例子:
$ grep ‘test’ d*
显示所有以d开头的文件中包含 test的行。
$ grep -ri -C2 'overhead' /opt/tars/apps/100004272/current/logs/
在指定目录下,不区分大小写地查找含有 'overhead' 的行,并显示其前后2行。
$ grep -E 'abc|abd' file
在file文件中,查找abc或abd子串所在行,并将子串(非整行)以漂亮的颜色展示。
4.筛选指定列
awk '{print $1}' filename//表示筛选出来第一列,从1开始计数。
5.排序
sort file
//对每行的内容排序。
sort默认的排序方式是升序,如果想改成降序,就加个-r 就搞定了。
6. 去重
uniq file
在文件内容有序的情况下去重
7.统计行数
wc file
//统计行数。
-l 统计行数
-w 统计单词数
-c 统计字节数
8.替换内容
sed 's/$/\n/g' //在行末追加换行符,适用于看日志时因自动换行导致行与行之间界限不清楚的场景。
sed命令一般不会修改原文件。