聊聊进程-2-进程的管理

2024-08-29 10:38
文章标签 管理 进程 聊聊

本文主要是介绍聊聊进程-2-进程的管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

进程的管理是运维的基本功之一,对如何玩转shell十分关键

掌握 进程基础概念

进程的创建

  • 前台进程 python xxx.py
  • 后台进程 python xxx.py &
    • 守护进程 nohup python xxx.py &

查看进程pid

pid

$$ $BASHPID 都可以,他们的区别如下脚本

$ echo $$ $BASHPID | cat -
11656 31528
$ echo $$ $BASHPID
11656 11656
$ echo $$ | while read line; do echo $line $$ $BASHPID; done
11656 11656 31497
$ while read line; do echo $line $$ $BASHPID; done <<< $$
11656 11656 11656

查询ppid

$PPID

查询本机进程树

pstree -p

已加pid后的操作

基本信息

ps -p
top -p

调试该进程

strace -p
gdb program

神奇的proc目录

/proc/

  • cmdline: 用’\0’分隔的命令行参数

  • cwd: 指向进程当前工作路径的符号链接,可以用来查询进程绝对路径

  • environ: 环境变量列表

  • exe: 指向进程执行文件的符号链接

  • fd: 存储该进程打开的文件句柄的符号链接
  • status: 各种状态信息(例如进程ID,内存使用,信号等)
  • task: 包含该进程所有线程的以TID命名的子目录

根据进程名字查找PID

下面几个方法:

ps -ef | grep xxx | grep -v grep | awk '{print $2}'
ps -ef | grep -w [g]xxx | awk '{print $2}'
pgrep -x xxxps -C xxx -o pid

根据PID判断进程存在与否

ps <pid>
[[ -d /proc/<pid> ]]
kill -0 <pid>

kill -0 返回为0,说明给的进程发送信号成功
,意味着
1. 进程存在
2. 权限允许

进程状态说明

  • D: 不可中断的睡眠
  • R: 等待运行,进程处于运行或就绪状态
  • S: 休眠状态
  • T: 停止状态
  • Z: 僵尸状态

进程返回码

$? 表示上一个命令的返回码,返回码范围:[0-255]
一般用 0 表示成功,非0的返回码,bash有一些特殊含义
- 1: 一般错误
- 2: Shell内置命令用法错误
- 126: 调用的命令不可执行
- 127: “命名不存在”
- 128+n: 致命错误信号“n”
- 130: Control-C终止
- 255: exit的状态码不合法

并发实现

  • 通过各个语言实现多进程多线程,这个这里不细讲,忽略
并发下载:
parallel -j5 wget xxxurlxargs –n 1 –P 6 wget xxxurl
Grep超大日志加速
cat biglog | parallel --pipe grep pattern
改写for loop
 doit() {} export -f doit; cat list | parallel doit```#### 传参数
```bash
seq 5 | parallel echo prefix_{}<div class="se-preview-section-delimiter"></div>
像cat | sh一样
 parallel -j 50 < jobs_to_run

这篇关于聊聊进程-2-进程的管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1117624

相关文章

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

软考系统规划与管理师考试证书含金量高吗?

2024年软考系统规划与管理师考试报名时间节点: 报名时间:2024年上半年软考将于3月中旬陆续开始报名 考试时间:上半年5月25日到28日,下半年11月9日到12日 分数线:所有科目成绩均须达到45分以上(包括45分)方可通过考试 成绩查询:可在“中国计算机技术职业资格网”上查询软考成绩 出成绩时间:预计在11月左右 证书领取时间:一般在考试成绩公布后3~4个月,各地领取时间有所不同

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

[Linux]:进程(下)

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:Linux学习 贝蒂的主页:Betty’s blog 1. 进程终止 1.1 进程退出的场景 进程退出只有以下三种情况: 代码运行完毕,结果正确。代码运行完毕,结果不正确。代码异常终止(进程崩溃)。 1.2 进程退出码 在编程中,我们通常认为main函数是代码的入口,但实际上它只是用户级

从状态管理到性能优化:全面解析 Android Compose

文章目录 引言一、Android Compose基本概念1.1 什么是Android Compose?1.2 Compose的优势1.3 如何在项目中使用Compose 二、Compose中的状态管理2.1 状态管理的重要性2.2 Compose中的状态和数据流2.3 使用State和MutableState处理状态2.4 通过ViewModel进行状态管理 三、Compose中的列表和滚动

Sentinel 高可用流量管理框架

Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。 Sentinel 具有以下特性: 丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应

java 进程 返回值

实现 Callable 接口 与 Runnable 相比,Callable 可以有返回值,返回值通过 FutureTask 进行封装。 public class MyCallable implements Callable<Integer> {public Integer call() {return 123;}} public static void main(String[] args

C#关闭指定时间段的Excel进程的方法

private DateTime beforeTime;            //Excel启动之前时间          private DateTime afterTime;               //Excel启动之后时间          //举例          beforeTime = DateTime.Now;          Excel.Applicat

linux中使用rust语言在不同进程之间通信

第一种:使用mmap映射相同文件 fn main() {let pid = std::process::id();println!(

NGINX轻松管理10万长连接 --- 基于2GB内存的CentOS 6.5 x86-64

转自:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=190176&id=4234854 一 前言 当管理大量连接时,特别是只有少量活跃连接,NGINX有比较好的CPU和RAM利用率,如今是多终端保持在线的时代,更能让NGINX发挥这个优点。本文做一个简单测试,NGINX在一个普通PC虚拟机上维护100k的HTTP