command [-options] [parameter]
说明:
command
:命令名,相应功能的英文单词或单词的缩写
-options
:选项,可用来对命令进行控制,也可以省略
parameter
:传给命令的参数,可以是 零个、一个或者多个
命令 | 作用 | 对应英文 |
---|---|---|
ls | 查看当前文件夹下的内容 | list |
pwd | 查看当前所在目录 | print work directory |
cd [目录名] | 切换文件夹 | changge directory |
mkdir [目录名] | 创建目录(文件夹) | make directory |
rm [文件名] | 删除指定文件 | remove |
cp [复制的文件名] [复制到的地址] | 复制文件或目录 | copy |
touch [文件名] | 如果文件不存在,新建文件 | touch |
clear | 清屏 | clear |
小技巧:
ctrl + shift + =
放大终端窗口的字体显示ctrl + -
缩小终端窗口的字体显示自动补全
在敲出 文件
/ 目录
/ 命令
的前几个字母之后,按下 tab 键
上 / 下
光标键可以在曾经使用过的命令之间来回切换ctrl + c
命令 | 作用 |
---|---|
find [查找路径] -寻找条件 匹配方式 | 查找指定路径下匹配方式相同的文件,包括子目录 |
grep 搜索文本 文件名 | 搜索文本文件内容 |
find 命令:通常用来在特定的目录下搜索
符合条件的文件
命令 | 作用 |
---|---|
find [查找路径] -寻找条件 匹配方式 | 查找指定路径下匹配方式相同的文件,包括子目录 |
寻找条件
-name:按照文件名查找文件
-a:and 必须满足两个条件才显示
-o:or 只要满足一个条件就显示
-iname:按照文件名查找文件(忽略大小写)
-type:根据文件类型进行搜索
-perm:按照文件权限来查找文件
-user 按照文件属主来查找文件。
-group 按照文件所属的组来查找文件。
-fprint 文件名:将匹配的文件输出到文件。
-newer file1 ! newer file2 查找更改时间比文件file1新但比文件file2旧的文件
匹配方式
-print 默认动作,将匹配的文件输出到标准输出
-exec 对匹配的文件执行该参数所给出的命令。相应命令的形式为 'command' { } \;,注意{ }和\;之间的空格。
-ok 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
-delete 将匹配到的文件删除
搜索当前目录下,文件名为.log,且内容中含有“变量”的文件
find . -name "*.log" | xargs grep -r "变量"
搜索桌面目录下,文件名包含 1 的文件
find -name "*1*"
搜索桌面目录下,所有以 .txt 为扩展名的文件
find -name "*.txt"
搜索桌面目录下,以数字 1 开头的文件
find -name "1*"
Linux 系统中 grep 命令是一种强大的文本搜索工具
grep 允许对文本文件进行 模式查找,所谓模式查找,又被称为正则表达式。可以把grep理解成字符查找工具
grep是筛选的命令,在查看日志的时候,也可以对日志的内容进行筛选
它可以把我们需要筛选的关键词那一部分的行数显示出来.
选项 | 含义 |
---|---|
-n | 显示匹配行及行号 |
-v | 显示不包含匹配文本的所有行(相当于求反) |
-i | 忽略大小写 |
- -color | 高亮显示关键字 |
-c | 只统计符合条件的总行数,而不会打印出行 |
-B数字 | 显示符合条件的行之前对应数字的行,”B”有before之意 |
-C | 在显示符合条件的行的同时,也会显示其前后的行,”-C”有Context之意(上下文之意) |
常用的两种模式查找
参数 | 含义 |
---|---|
^a | 行首,搜寻以 a 开头的行 |
ke$ | 行尾,搜寻以 ke 结束的行 |
下面的命令就是查询catalina.out中,包含error关键字前后10行的日志以less的方式显示出来
grep -Cn 10 'error' catalina.out | less
-A 10 匹配行的前10行内容
-B 10 匹配行的后10行内容
-C 10 匹配行的环绕10行内容
'error' 关键词需要引号包裹
less 查看的方式
在.log类型的文件中搜索张三
grep 张三 *.log
查询关键字,高亮显示
-C5表示显示该关键词所在的上下5列
grep 'request' -C5 app.log --color
grep过滤屏蔽关键字
比如我们日志类型是DEBUG级别,想要屏蔽DEBUG级别的日志,就可以使用下面的命令
tail -f app.log | grep -v 'DEBUG'
查询多个条件,与条件
tail grep 'A' -f app.log | grep 'B'
查询多个条件,或条件
tail -f grep -E 'A|B' app.log
命令 | 作用 |
---|---|
ls | 为列出目录的内容 |
cd [目录名] | 用于切换工作路径 |
命令 | 作用 |
---|---|
ls | 为列出目录的内容 |
Linux 下文件和目录的特点
ls选项
参数 | 含义 |
---|---|
-a | 显示指定目录下所有子目录与文件,包括隐藏文件 |
-l | 以列表方式显示文件的详细信息 |
-h | 配合 -l 以人性化的方式显示文件大小 |
ls通配符
通配符 | 含义 |
---|---|
* | 代表任意个数个字符 |
? | 代表任意一个字符,至少 1 个 |
[] | 表示可以匹配字符组中的任一一个 |
[abc] | 匹配 a、b、c 中的任意一个 |
[a-f] | 匹配从 a 到 f 范围内的的任意一个字符 |
注意:以 . 开头的文件为隐藏文件,需要用 -a 参数才能显示
cd命令用于切换工作路径
命令格式
cd [目录名]
参数
. 代表当前目录
.. 代表上一级目录
cd 切换目录
cd ~ 切换到当前用户的主目录(家目录~)
cd . 保持在当前目录不变
cd .. 切换到上级目录
cd - 可以在最近两次工作目录之间来回切换
命令 | 作用 |
---|---|
cat 文件名 | 查看文件内容、创建文件、文件合并、追加文件内容等功能 |
more 文件名 | 分屏显示文件内容 |
less [参数] 文件 | 分屏显示文件内容 |
cat 命令可以用来 查看文件内容、创建文件、文件合并、追加文件内容等功能
cat 会一次显示所有的内容,适合查看内容较少的文本文件
选项 | 含义 |
---|---|
-n | 显示文件行号 |
-b | 显示行号,但是不把空白行计入行 |
-s | 多行空白行只显示一行空白行 |
查看info.log的全部日志内容
cat info.log
查看info.log的java关键字关联的全部内容
cat info.log | grep "java"
查看info.log的java关键字后5行关联的全部内容
cat info.log | grep -A 5 "java"
查看info.log的java关键字前10行关联的全部内容
cat info.log | grep -B 10 "java"
查看info.log的java关键字前后20行关联的全部内容
cat info.log | grep -C 20 "java"
more 命令可以用于分屏显示文件内容,每次只显示一页内容
适合于 查看内容较多的文本文件
命令格式
more [选项] 文件
more 的操作键
操作键 | 功能 |
---|---|
空格键 | 显示手册页的下一页 |
b | 回滚一页 |
Enter键 | 向下n行,需要定义。默认为1行 |
Ctrl+F | 向下滚动一屏 |
Ctrl+B | 返回上一屏 |
f | 前滚一屏 |
= | 输出当前行的行号(只输出当前一行的行号) |
v | 调用vi编辑器 |
q | 退出more |
/word | 搜索 word 字符串 |
选项
选项 | 作用 |
---|---|
+n | 从文件的第n行开始查看 |
-n | 每次翻页n行 |
从text.log文件的2000行开始查看
more +2000 text.log
每次翻页20行
more -20 text.log
从text.log文件的里面的“变量”的前两行开始显示
more +/变量 text.log
less命令是查看文档,跟more一样可以进行翻页,但是可以往前翻页。
应该说是linux正统查看文件内容的工具,功能极其强大。less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜
命令格式
less [参数] 文件
参数:
-b <缓冲区大小> 设置缓冲区的大小
-e 当文件显示结束后,自动离开
-f 强迫打开特殊文件,例如外围设备代号、目录和二进制文件
-g 只标志最后搜索的关键词
-i 忽略搜索时的大小写
-m 显示类似more命令的百分比
-N 显示每行的行号
-o <文件名> 将less 输出的内容在指定文件中保存起来
-Q 不使用警告音
-s 显示连续空行为一行
-S 行过长时间将超出部分舍弃
-x <数字> 将“tab”键显示为规定的数字空格
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重复前一个搜索(与 / 或 ? 有关)
N:反向重复前一个搜索(与 / 或 ? 有关)
z 向后翻一页
d 向后翻半页
b 向上翻一页
h 显示帮助界面
Q 退出less 命令
u 向前滚动半页
y 向前滚动一行
空格键 滚动一页
回车键 滚动一行
[pagedown]: 向下翻动一页
[pageup]: 向上翻动一页
标记导航
当使用 less 查看大文件时,可以在任何一个位置作标记,可以通过命令导航到标有特定标记的文本位置:
m - 标记一个锚点当前位置
' - 跳转到某个锚点.
比如:
ma - 标记当前位置为a
'a - 导航到标记 a 处
其他技巧
ctrl+c
停止回到less比如下面这个,就是忽略搜索时的大小写,显示百分比,显示行号,连续空行为一行的来显示log日志
less -imNs /opt/appl/spring-cloud/log/service.log
如果文件已存在,会直接打开该文件;
如果文件不存在,会新建一个文件
备注说明:一般VIM是用来编辑文件的,所以不是查看日志的常用命令。但是VIM也是可以实现日志文件内容查看的。
命令格式
vi 文件名
操作按键
按键 | 作用 |
---|---|
n | 下一个搜索出来的word字符串 |
shift+n | 前一个搜索出来的word字符串 |
i | 进入编辑模式,左下角显示INSERT |
ESC | 退出编辑模式,之后使用退出命令退出vi编辑器 |
命令 | 作用 |
---|---|
/word | 搜索word字符串 |
?word | 向前搜索word字符串 |
:$ | 跳转到最后一行 |
:w | 保存 |
:q | 退出 |
:q! | 强行退出,不保存退出(常用) |
:wq | 保存并退出 |
:x | 保存并退出 |
:wq! | 强制保存修改的内容然后退出(修改了只读文件会用到) |
tail命令用于查看纯文本文档的后 N行或持续刷新内容,
命令格式
tail [参数] [文件]
参数
-f 循环读取
-q 不显示处理信息
-v 显示详细的处理信息
-c<数目> 显示的字节数
-n<行数> 显示文件的尾部 n 行内容
--pid=PID 与-f合用,表示在进程ID,PID死掉之后结束
-q, --quiet, --silent 从不输出给出文件名的首部
-s, --sleep-interval=S 与-f合用,表示在每次反复的间隔休眠S秒
实时查看文件最新信息
tail -f 文件名
查看文本内容的最后20行
tail -n 20 文件名
动态查看实时输出info.log日志
tail -f info.log
查看info.log日志后200行
tail -n 200 info.log
动态查看含有关键字orderId的日志
tail -f info.log | grep "orderId"