进程信息查看脚本

news2024/12/23 7:37:28

一、shell 脚本

        该脚本可以根据进程名和进程pid查询进程信息。

        输出的进程信息包括:进程 PID、进程命令、进程所属用户、CPU占用率、内存占用率等

        查询可选择模式:仅一次还是不限次。

#! /bin/bash

printProcessInfo(){
    P=$1
    echo "--------------------------------"
    echo "进程PID: $1"
    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 "--------------------------------"
}

searchByPName(){
    read -p "请输入要查询的进程名:" NAME
    N=`ps -aux | grep $NAME | grep -v grep | wc -l` ##统计进程总数
    if [ $N -le 0 ];then
      echo "该进程名没有运行!"
    fi
    i=1
    echo "***************************************************************"
    while [ $N -gt 0 ]
    do
      echo "进程PID: `ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $2}'`"
      echo "进程命令:`ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $11}'`"
      echo "进程所属用户: `ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $1}'`"
      echo "进程开始运行的时刻:`ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $9}'`"
      echo "进程运行的时间:` ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $11}'`"
      echo "进程状态:`ps -aux | grep $NAME | grep -v grep | awk 'NR=='$i'{print $0}'| awk '{print $8}'`"
      echo "***************************************************************"
      let N-- i++
    done
}

searchByPid(){
    echo "***"
    echo "1. 仅一次"
    echo "2. 无限次"
    read -p "请选择查询选项: " c

    n=`ps -aux| awk '$2~/^'$1'$/{print $11}'|wc -l`
    if [ $n -eq 0 ];then
     echo "该PID不存在!!"
     exit
    fi

    if [ $c -eq 1 ]; then
        printProcessInfo $1
    elif [ $c -eq 2 ]; then
        while true
        do
            printProcessInfo $1
            sleep 2
        done
    else
        echo "错误选项,请重新运行"
    fi
}

echo "1. 进程名"
echo "2. 进程PID"
read -p "请输入查询的类型 :" s

if [ $s -eq 1 ]; then
    searchByPName
fi
read -p "请输入进程 PID : " epid
searchByPid $epid

二、运行截图

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/796585.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

15 文本编辑器vim

15.1 建立文件命令 如果file.txt就是修改这个文件,如果不存在就是新建一个文件。 vim file.txt 使用vim建完文件后,会自动进入文件中。 15.2 切换模式 底部要是显示插入,是编辑模式; 按esc,底部要是空白的&#xff0…

NetCore 使用 Swashbuckle 搭建 SwaggerHub

什么是SwaggerHub? Hub 谓之 中心, 所以 SwaggerHub即swagger中心. 什么时候需要它? 通常, 公司都拥有多个服务, 例如商品服务, 订单服务, 用户服务, 等等, 每个服务都有自己的environment, endpoint, swagger schema. 然而这些信息都分散在各处, 如果能集中在一个地方展示…

自主AI代理:未来的生产力引擎

摘要 文章介绍了自主AI代理的概念,AI代理由AI驱动,能够自我创建、优先处理和完成任务。自主AI代理可以执行任何数量的任务,包括内容创建、个人助手、个人财务管理、研究和数据分析等。文章强调了知识、记忆和学习在构建成功的自主AI代理中的重…

任务与项目的巧妙运用:项目管理软件的有效实践方法

如果您不熟悉项目管理或以前依赖任务管理系统来管理您的项目,那么任务和项目之间的区别可能会令人困惑。任务和项目是项目管理软件中的主要构建块,使您能够跟踪和组织您的工作。 任务是需要在项目中完成的单个工作单元。项目是需要一起完成以实现单个结果…

Linux数据处理三剑客

目录: Linux 三剑客之 greplinux三剑客之awklinux三剑客之sedlinux三剑客与管道使用【实战】三剑客实战之nginx日志分析实战【实战】三剑客实战之性能、网络统计实战linux进阶命令linux环境配置Linux与Bash编程实战 1.Linux 三剑客之 grep 内容检索:(…

高电压放大器ATA-2021B在无损检测领域中的应用

超声无损检测(UltrasonicNondestructiveTesting,简称UT)是一种常用的材料及构件内部缺陷检测技术。它利用超声波在材料中传播的特性,通过接收回波信号来检测材料内部的缺陷情况。超声无损检测具有精度高、快速、非破坏性等优点&am…

k8s Webhook 使用java springboot实现webhook 学习总结

k8s Webhook 使用java springboot实现webhook 学习总结 大纲 基础概念准入控制器(Admission Controllers)ValidatingWebhookConfiguration 与 MutatingWebhookConfiguration准入检查(AdmissionReview)使用Springboot实现k8s-Web…

【录用案例】2区SCI,仅14天见刊!

近日新增两本2区SCI录用,期刊表现质量优,均是隶属于世界前列的出版社,好刊版面紧俏,可放心投稿!录用案例如下,可重点参考: 计算机科学类SCI&EI 【影响因子】IF(2022&#xff0…

Microsoft todo 数据导出

文章目录 官方说明: https://support.microsoft.com/zh-cn/office/导出您的-microsoft-待办事项帐户-d286b243-affb-4db4-addc-162e16588943 由于 微软待办 会自动与 Outlook 中的任务同步,因此您可以从 Outlook 中导出所有列表和任务。 若要导出列表和…

Docker 安全 Docker HTTPS请求过程与配置

Docker 容器安全注意点 尽量别做的事 尽量不用 --privileged 运行容器(授权容器root用户拥有宿主机的root权限) 尽量不用 --network host 运行容器(使用 host 网络模式共享宿主机的网络命名空间) 尽量不在容器中运行 ssh 服务 尽…

11.对象

11.1什么是对象 ●对象(object) : JavaScript里的一种数据类型 ●可以理解为是一种无序的数据集合,注意数组是有序的数据集合 11.2对象的使用 1.对象的声明语法 (1)let对象名 {} (2)let对象名new Object() // {} …

vue实现flv格式视频播放

公司项目需要实现摄像头实时视频播放,flv格式的视频。先百度使用flv.js插件实现,但是两个摄像头一个能放一个不能放,没有找到原因。(开始两个都能放,后端更改地址后不有一个不能放)但是在另一个系统上是可以…

振弦采集仪及在线监测系统完整链条的岩土工程隧道安全监测

振弦采集仪及在线监测系统完整链条的岩土工程隧道安全监测 近年来,随着城市化的不断推进和基础设施建设的不断发展,隧道建设也日益成为城市交通发展的必需品。然而,隧道建设中存在着一定的安全隐患,如地质灾害、地下水涌流等&…

Python(四十三)else语句

❤️ 专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 :本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

实用人工智能 2.0,在线“学习、探索和构建”ML 模型

人工智能爱好者过去需要在一个好的GPU上投资数千美元才能“动手”进行机器学习,但现在一个简单的网络浏览器就足够了。总部位于硅谷的非营利组织PracticalAI最近发布了“PracticalAI2.0”,该平台包括TensorFlow 2.0Keras中的说明性机器学习课程&#xff…

吉客云对接打通金蝶云星空分页查询出库单接口与其他出库新增接口

吉客云对接打通金蝶云星空分页查询出库单接口与其他出库新增接口 对接系统吉客云 杭州吉客云网络技术有限公司是经国家认定的高新技术企业,是国内领先的SaaSERP软件服务商,致力于为企业提供安全稳定、高可用性和高扩展性的一站式数字化解决方案。 接通系…

如何全面评价国内的低代码开发平台 (apaas)?

低代码开发平台是无需编码(0代码)或通过少量代码就可以快速生成应用程序的开发平台。 通过可视化进行应用程序开发的方法(参考可视编程语言),使具有不同经验水平的开发人员可以通过图形化的用户界面,使用拖…

SpringBoot网上宠物领养管理系统【纯干货分享,免费领源码05971】

摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,宠物行业当然也不例外。网上宠物领养管理系统是以实际运用为开发背景,运用软件工程原理和开发方法&#xff…

持续进化 | MWORKS 2023b正式上线,更新要点一文速览!

6月30日,同元软控成功举办MWORKS 2023b产品发布会,会上公布了新版MWORKS的产品特性、重大改进、关键技术以及设计理念。7月21日,科学计算与系统建模仿真平台MWORKS 2023b正式上线,开放下载。 此次更新的2023b版本带来了8个工具的重…

线段树----logn时间维护查询区间和/最大值/最小值

线段树 引入 线段树是算法竞赛中常用的用来维护 区间信息 的数据结构。 线段树可以在 O(\log N) 的时间复杂度内实现单点修改、区间修改、区间查询(区间求和,求区间最大值,求区间最小值)等操作。 线段树的区间修改与懒惰标记 …