linux获取jmeter PID并且kill与启动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux获取jmeter PID并且kill与启动相关的知识,希望对你有一定的参考价值。

Linux 的交互式 Shell 与 Shell 脚本存在一定的差异,主要是由于后者存在一个独立的运行进程,因此在获取进程 pid 上二者也有所区别。

交互式 Bash Shell 获取进程 pid

在已知进程名(name)的前提下,交互式 Shell 获取进程 pid 有很多种方法,典型的通过 grep 获取 pid 的方法为(这里添加 -v grep是为了避免匹配到 grep 进程):

ps -ef | grep "name" | grep -v grep | awk ‘{print $2}‘

或者不使用 grep(这里名称首字母加[]的目的是为了避免匹配到 awk 自身的进程):


ps -ef | awk ‘/[n]ame/{print $2}‘

如果只使用 x 参数的话则 pid 应该位于第一位:

ps x | awk ‘/[n]ame/{print $1}‘

最简单的方法是使用 pgrep:

pgrep -f name

如果需要查找到 pid 之后 kill 掉该进程,还可以使用 pkill:

pkill -f name

如果是可执行程序的话,可以直接使用 pidof

pidof name

获取jmeter_pid

[[email protected] ~]# ps -ef | grep "jmeter" | grep -v grep | awk ‘{print $2}‘    
18406
18408
18442

编写shell

#!/bin/bash

#jmeter kill and start

echo -e ‘\033[32m--------Jmeter---------------\033[0m‘
echo "kill掉jmeter-server 进程................... \n"
kill -9 `ps aux | grep jmeter | grep -v grep | awk ‘{print $2}‘`
sleep 3
cd /root/tools/apache-jmeter-3.3/bin/
echo "启动jmeter-server"
nohup ./jmeter-server &
echo -e ‘\033[32m------------欢迎使用-----------------\033[0m‘

以上是关于linux获取jmeter PID并且kill与启动的主要内容,如果未能解决你的问题,请参考以下文章

linux中kill killallkillall5命令区别

linux下杀死nohup &提交的任务?

linux系统怎么kill进程

Linux 下如何结束指定进程

2020-06-17Linux命令:kill

Linux基础命令:kill