本篇内容主要讲解“shell中怎么根据进程查找指定容器”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“shell中怎么根据进程查找指定容器”吧!
当我们在一台docker服务器上使用top命令定位出一个占用资源比较高的进程,如何发现它属于哪一个容器。
1、首先获取进程pid
2、使用docker top命令查找容器pid
docker top 容器命或容器id
当docker 容器过多时,一个一个排查对比费事费力,这里有一个脚本可以快速查找
#!/bin/bash#将需要查找的pid输入$1变量#将所有容器的pid导入变量aa=`dockerps-a|sed-n'1!p'|awk'{print$1}'`#将容器id循环导入dockertop命令,查找容器对应的pidforbin$adoc=`dockertop$b|sed-n'1!p'|awk'{print$2}'`#经每一个容器的pid与输入$1对比if[$c==$1];then#输出对应$1的容器信息dockerps-a|grep$cfidone
补充:shell查找进程并终止
创建kill.sh文件,内容如下:
port=9200#一、根据端口号查询对应的pid,两种都行pid=$(netstat-nlp|grep:$port|awk'{print$7}'|awk-F"/"'{print$1}');#pid=$(ps-ef|grep你的进程或端口|grep-vgrep|awk'{print$2}')#二、杀掉对应的进程,如果pid不存在,则不执行if[-n"$pid"];then kill-9$pid;fi
这个脚本其实就2步,先获取进程id,然后 kill 掉这个进程。(1)获取进程id的方法 这个可以用 awk命令来获取
ps-ef|grep你的进程|grep-vgrep|awk'{print$2}'
这里要把这个grep这个用 -v 来过滤掉,然后用awk命令,提取第2个参数就是进程id了(2)杀进程方法 这个就直接kill -9 进程id 就ok了
kill-9你的进程id
到此,相信大家对“shell中怎么根据进程查找指定容器”有了更深的了解,不妨来实际操作一番吧!这里是恰卡编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
浅谈php一句话木马工作原理
PHP中9个非常非常有用的函数
Shell编程基础(五)Shell数组与Subshell
linux shell 解析命令行参数及while getopts用法小结
目录linuxshell解析命令行参数|getpotsgetpotslinuxshell解析命令行参数|getpotsd...
jenkins如何实现shell脚本化定时执行任务
nginx服务启动程序的Shell脚本怎么写
nginx服务启动程序的Shell脚本怎么写这篇文章主要介绍“ng...
Linux中Shell函数怎么调用
Shell怎么监控httpd服务80端口状态
Shell怎么监控httpd服务80端口状态本篇内容介绍了“She...
Linux shell中for循环怎么用
如何进行.net Core 生产环境下的KestrelServer + Shell 实践
用户名
密码
记住登录状态 忘记密码?
邮箱
确认密码
我已阅读并同意 用户协议