写点什么

软件测试学习笔记丨服务端问题定位常用 linux 指令集合

作者:测试人
  • 2024-03-13
    北京
  • 本文字数:1472 字

    阅读完需:约 5 分钟

本文转自测试人社区,原文链接:https://ceshiren.com/t/topic/29810

1、找到服务运行路径

部分服务只知道端口,或者关键字。那如何定位找到某个关键字的服务的运行路径?
复制代码

指令:

ps -ef | grep XXX //通过关键字 XXX,获取进程信息,查看进程的 PID 编号

ll /proc/PID //通过 PID 编号,获取 CWD 信息,查看程序的运行路径

2、动态跟踪日志,过滤关键字和反向过滤关键字

在查看日志时,需要动态跟踪日志,有时候日志太多或者刷新太快,只关注部分想看的关键字。或者有一些DEBUG关键字日志不想看到。可以通过grep来实现。
复制代码

指令:

tail -f XXX.log | grep AAA //动态跟踪 XXX.log 日志,只查看包含了 AAA 关键字的日志

tail -f XXX.log| grep -v BBB //动态跟踪 XXX.log 日志,同时不查看包含了 BBB 关键字的日志。

3、查看某个端口是否被占用

大量服务是通过端口号做区分,可以使用指令查看某一个端口号,是否被占用。

指令:

netstat -lntup | grep port //通过 port 端口号,获取端口占用信息,查看占用端口进程 PID

4、查看系统磁盘使用情况

会存储部分异常服务日志异常打满了磁盘的情况,我们可以通过指令定为到是哪一个文件占满了日志指令:df      //查看当前系统的磁盘、挂接的磁盘du -sh *  //查看当前路径下,所有文件的大小du  -h   --max-depth  N   //查看指定路径下,指定N层文件的的大小
复制代码

5、查找某个名字的文件

可以需要找到包含某个关键字的文件,但是只记得部分名字,可使用find 加通配符定为文件。指令:find .  "*XXX*"    //查看当前路径下,文件名包含了XXX关键字的所有文件。
复制代码

6、查看所有日志或者文本文件中,是否包含某个关键字。

需要知道当前的文件中,是否包含某个指定关键

grep -rl XXX //查看当前路径下的所有文本文件,是否包含 XXX 关键字。

grep -r XXX //查看当前路径下的所有文件,具体那一个文件的哪一行,包含了 XXX 关键字

7、查询曾经执行过的某一个指令

同一用户需要指令的某些指令,经常是重复执行某一命令。可以用过方向键的↑键,或者history指令查找历史指令。指令:history | grep XXX   //查看包含XXX关键字的历史指令。
复制代码

8、强杀包含某个关键字的服务

某些服务,可能因为异常原因,需要强制停止。可以使用kill 指令
复制代码

指令:

ps -aux | grep XXX //查看包含 XXX 关键字的进程,其中第二列为进程的 PID 关键字。

kill -9 PID //强制停止进程 PID 的服务

9、查看当前机器的运行状态

某些服务运行异常时,会消耗掉机器的大量资源,为了查看当前机器的状态,可以使用指令,查看当前机器 cpu、内存、磁盘的运行状态。

指令:

top //查看当前机器运行状态下,cpu、内存的运行和消耗状态

iostat //查看当前机器磁盘的读写状态

10、批量删除路径下,包含某些关键字的文件。

有些服务运行时间比较之后,会产生大量的日志文件。可以通过通配的方法,批量删除路径下的文件。

指令:

rm -rf XXX.log.20190* //批量删除路径下,以 XXX.log.20190 开头的所有文件。(-f 会跳过确认,需要谨慎使用)

11、服务器之间传输文件

有场景涉及到多个服务器之间传递文件数据。可以使用 linux 自带的 SimpleHTTPServer 服务实现

指令:

python -m SimpleHTTPServer //在需要下载的路径下执行

wget host:8000/filename //在目标服务器直接使用 wget 下载文件。

同时,在 windows 浏览器中,使用 http://host:8000 可以浏览执行路径下所有的文件服务器。

8000 端口被占用时,直接使用python -m SimpleHTTPServer 8001 修改成 8001 端口

12、重复执行上次相同的指令

在部分场景,需要重复执行相同指令。

指令:

ps -ef | grep 8000 //第一次执行指令

!ps //直接再次执行 ps -ef | grep 8000 指令

免费领取:测试资料+测试用例+简历模板+测试文档


用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试学习笔记丨服务端问题定位常用linux指令集合_Linux_测试人_InfoQ写作社区