tail
tail命令常使用选项-f
-f, --follow[={name|descriptor}]
output appended data as the file grows;
an absent option argument means 'descriptor'
例如:
tail -1000f sys.log
按回车键增加空白行,按Ctrl + C 结束
vi / vim
vi 文件名
如:vi sys.log
进入文件后使用/字符(从光标出向尾)或?字符(从光标出向头)搜索 + 回车键
找到内容后按n跳到下一个,按h、j、k、l可以移动光标
grep
grep用法可以很多种,列举常用的。
用法:grep -C 20 “搜索字符” 文件名
-C:表示找到目标时,同时显示目标上下20行内容。
[shy@localhost ~]$ grep -C 2 123 01.log
123
456
789
123
iii
uuu
[shy@localhost ~]$ grep -C 1 123 01.log
123
456
789
123
iii
[shy@localhost ~]$ grep -C 1 '123' 01.log
123
456
789
123
iii
[shy@localhost ~]$ grep -C 1 "123" 01.log
123
456
789
123
iii
[shy@localhost ~]$
可以加 -n输出行号:
grep -C 1 -n "123" 01.log
递归查找文件夹
grep -rHn 查找字符 目录
不写目录就是默认当前目录:grep -rHn 查找字符
-r是递归,H是找到输入时显示文件名,n是内容所在的行号
如:
y@localhost log]$ grep -rHn Hello ./
./sys.log:4:Hello world
./sys2.log:1:Hello world
grep嵌套grep,grep出来的内容还可以多次grep
grep xxx | grep xxx
如:
[shy@localhost log]$ grep -C 30 Hello sys.log
[01]
[02]
你好
Hello world
are you ok
[kkkk]
info
kkkk
abcdef
1111
2222
3333
[shy@localhost log]$ grep -C 30 Hello sys.log | grep 你好
你好
[shy@localhost log]$ grep -C 30 Hello sys.log | grep -C 2 你好
[01]
[02]
你好
Hello world
are you ok
[shy@localhost log]$
grep时特殊字符需要使用\转义,特殊字符如英文的双引号""
[shy@localhost log]$ grep -rHn -C 5 \"xiaomi\"
sys.log-9-abcdef
sys.log-10-1111
sys.log-11-2222
sys.log-12-3333
sys.log-13-"小明"
sys.log:14:"xiaomi"
[shy@localhost log]$