#!/bin/bash

read -p "输入要查询的PID: " P

#筛选第二列等于输入的PID号
n=`ps aux | awk '$2~/^'$P'$/ {print $11}' | wc -l` if [ $n -eq 0 ];then
echo "该PID不存在!"
exit
fi echo "--------------------------------"
echo "进程PID: $P"
echo "进程命令:`ps aux | awk '$2~/^'$P'$/ {print $11}'`"
echo "进程所属用户:`ps aux | awk '$2~/^'$P'$/ {print $1}'`"
echo "CPU占用率:`ps aux | awk '$2~/^'$P'$/ {print $3}'`"
echo "内存占用率:`ps aux | awk '$2~/^'$P'$/ {print $4}'`"
echo "进程开始运行时间:`ps aux | awk '$2~/^'$P'$/ {print $9}'`"
echo "进程运行的持续时间:`ps aux | awk '$2~/^'$P'$/ {print $10}'`"
echo "进程状态:`ps aux | awk '$2~/^'$P'$/ {print $8}'`"
echo "进程虚拟内存:`ps aux | awk '$2~/^'$P'$/ {print $5}'`"
echo "进程共享内存:`ps aux | awk '$2~/^'$P'$/ {print $6}'`"
echo "--------------------------------"

执行结果如下

[root@localhost ~]# sh PID_INFO.sh
输入要查询的PID: 6870
--------------------------------
进程PID: 6870
进程命令:/usr/bin/abrt-watch-log
进程所属用户:root
CPU占用率:0.0
内存占用率:0.2
进程开始运行时间:17:41
进程运行的持续时间:0:00
进程状态:Ss
进程虚拟内存:225800
进程共享内存:4912
--------------------------------

shell 脚本 根据PID过滤查看进程所有信息的更多相关文章

  1. shell脚本实现轮询查看进程是否结束

    功能需求: 一个shell脚本,为了使用多进程,启动十几个后台运行的程序,为了防止脚本比后台进程提前结束造成不可预估的影响,现要判断是否多个后台执行的已知进程已经结束,并在所有进程结束后做出相应操作. ...

  2. 使用Shell脚本对Linux系统和进程资源进行监控

    ShellLinux脚本 摘要:Shell语言对于接触Linux的人来说都比较熟悉,它是系统的用户界面,提供了用户与内核进行交互操作的一种接口.本文我们以Bash做为实例总结了使用Shell对系统和进 ...

  3. 使用 shell 脚本对 Linux 系统和进程资源进行监控

    Shell 简介 Shell 语言对于接触 LINUX 的人来说都比较熟悉,它是系统的用户界面,提供了用户与内核进行交互操作的一种接口.它接收用户输入的命令并把它送入内核去执行.实际上 Shell 是 ...

  4. shell学习五十天----查看进程ps命令

    进程列表 列出进程中最重要的命令便是进程状态命令:ps. ps命令是进程状态(Process Status)的缩写.ps命令用来列出系统中当前执行的那些进程.ps命令列出的是当前那些进程的快照,就是执 ...

  5. Linux Shell脚本实现根据进程名杀死进程

    Shell脚本源码如下: #!/bin/sh #根据进程名杀死进程 if [ $# -lt 1 ] then echo "缺少参数:procedure_name" exit 1 f ...

  6. shell脚本监控调度器/proc进程是否运行(嵌套循环)

    /proc/<pid>/schedstat $/schedstat First: , Second:time spent waiting on a runqueue,这个值与上面的se.w ...

  7. 使用Shell脚本查找程序对应的进程ID,并杀死进程

    #!/bin/sh NAME='shell.php' echo $NAME ID=`ps -ef | grep "$NAME" | grep -v "$0" | ...

  8. 通过shell脚本开始和结束守护进程

    //关闭脚本 #!/bin/sh WHOAMI=`whoami` PID=`ps -u $WHOAMI | grep 守护进程名 | awk '{print $1}'` if (用户名 "$ ...

  9. shell脚本网络流量实时查看

    Linux网络流量实时查看脚本,Centos默认没有自带流量查看工具,通过网上的资料做了一些修改 #!/bin/bash # Author: Ca0gu0 # Script Name: idev.sh ...

随机推荐

  1. Linux下MySQL基础及操作语法

    什么是MySQL? MySQL是一种开源关系数据库管理系统(RDBMS),它使用最常用的数据库管理语言-结构化查询语言(SQL)进行数据库管理.MySQL是开源的,因此任何人都可以根据通用公共许可证下 ...

  2. TCP拥塞控制详解

    1. 拥塞原因与代价 拥塞的代价 当分组的到达速率接近链路容量时,分组经历巨大的排队时延. 发送方必须执行重传以补偿因为缓存溢出而丢弃的分组. 发送方在遇到大时延时进行的不必要重传会引起路由器利用其链 ...

  3. Map的putAll方法验证

    下面的程序验证了Map的putAll方法的行为特性,代码如下: import java.util.HashMap; public class Map_putAllTest { public stati ...

  4. Qt Designer中自定义控件的使用(提升法与插件法)

    准备乱写一点Qt自定义Widget在Designer中的使用.可是又不想重复提升法(promotion)及插件法基本用法,因为Manual中Using Custom Widgets with Qt D ...

  5. Linux之cat tail less常见用法

    1.cat 通常查找出错误日志 cat error.log | grep 'foo' , 这时候我们还有个需求就是输出当前这个日志的前后几行: cat error.log | grep -C 10 ' ...

  6. Java 横向技术 Spring框架【笔记】

    Java横向技术 spring框架[笔记] Spring 的两大特性是什么? AOP(Aspect Oriented Programming,面向切面编程)与 IOC(Inverse of Contr ...

  7. easyexcel-导入

    package com.meeno.framework.util.easyexcel.entity; import cn.afterturn.easypoi.excel.annotation.Exce ...

  8. SpringBoot-2-1-6-集成activiti7-1-0-M4

    pom.xml <dependencyManagement> <dependencies> <dependency> <groupId>org.acti ...

  9. 【SpringMVC】@RequestMapping注解

    @RequestMapping注解的源码 @Target({ElementType.TYPE, ElementType.METHOD}) @Retention(RetentionPolicy.RUNT ...

  10. 程序员必须知道的数据结构:HashMap 与 LinkedHashMap

    为什么要说 HashMap 与 LinkedHashMap?第一:这两种数据结构是 Java Coder 中经常使用的数据结构.第二:这两种结构是最合适的能说明链表与数组的结构关系.在开始之前首先必须 ...