欢迎光临散文网 会员登陆 & 注册

[oeasy]python0032_杀死进程_进程后台运行不输出_nohup_ps_显示进程

2022-12-24 22:02 作者:oeasy  | 我要投稿

查看进程

回忆上次内容

  • 上次先ctrl+z挂起进程

    • 然后运行 bg

  • 程序继续跑起来

  • 而且不断输出到标准输出流

  • 甚至连ctrl+c都无法结束进程了

  • 这可怎么办呢?

  • 只能新开一个终端想办法

查询进程

  • 搜索 debian进程查询

  • 找到具体方法

进程

  • 具体方法

动手试试

  • 新开一个终端

    • 运行ps -elf

  • 查看到两条进程信息

    • 看起来上一个zsh就是pid为281的进程

    • 记住281这个pid

  • 现在我想把这个278进程干掉怎么办?

  • 搜索一下

搜索

  • 搜索结果

杀意

  • 搜到了一个可怕的程序叫做 kill😱

    • pid的编号可以通过ps -elf的结果中找到

    • 找到上一个zsh的pid

    • 就是刚刚的281

    • 他可以给指定 pid 的进程发送信号

#杀死进程kill -9 PID

  • -9 就是死亡信号

    • 发过去之后那个进程就要自尽 🥵

    • 没有任何进程愿意接受着这个信号

    • 君要臣死,臣不得不死

    • 权限对进程是多么重要啊

    • 但是接到了就要执行

    • 阿啊阿啊阿啊·~ 💀

  • 真的把之前的那个zsh进程干掉了

    • 窗口都消失了

  • 但是看到的进程太多了

    • 但我只想要和当前zsh有关的进程

zsh进程

#查询进程#我们只要和zsh这个进程相关的#把e去掉ps -lf

  • 这样只出现本shell相关的进程

  • kill起来比较方便

  • 好像还挺好玩

    • 再建几个进程放后台

    • 试着kill一下

启动更多新进程

  • 先启动更多的报时程序

  • 再试着一个个地kill

  • 如何理解suspend呢?

suspend词源

  • suspend = sus + pend

  • sus来自于sub 下面

    • 怀疑 (sus+pect看→在下面看一看→怀疑)

    • 支撑;承受(sus+tain握住→在下面握住→支撑)

    • sustain

    • suspect

    • susceptive 有接受力的;敏感的(sus+cept拿+ive→有拿下的能力→有接受力的)

  • suspend是什么意思呢?

-pend

  • pend 来自于 *(s)pen-

  • *(s)pen- 意思为悬挂带着

    • ex- 出 , 向外 + -pend- 支付

    • spend

    • 词根词缀: ap- 来 , 临近

    • -pend- 悬挂

    • 垂→依附

    • de-, 向下,离开 -pend, 悬挂

    • 即悬挂点

    • 引申义依靠

    • denpendent

    • independent

    • depend

    • append

    • expend

  • suspend

    • 挂起

    • 吊,悬挂;推迟,暂停

    • 有啥关系?

suspend

  • 古代萨克逊人使用的刀叫做撒克逊刀

    • 刃朝上抽出来就是要战斗

  • 挂起来

    • sustain 了

    • 就是不战斗了

    • 推迟战斗了

    • 暂停了

  • 程序先不运行

    • 就是挂起了

  • 先运行再挂起还是有点麻烦

  • 可以直接后台运行但是不输出到屏幕吗?

搜索

  • 搜索结果

查询手册

后台运行不输出

  • 搜索后得到答案

  • nohup python -u show_time.py > test.log 2>&1 &

    • 将标准错误 2 重定向到标准输出 &1

    • 标准输出 &1 再被重定向输入到 test.log 文件中

    • 0 – stdin (standard input,标准输入)

    • 1 – stdout (standard output,标准输出)

    • 2 – stderr (standard error,标准错误输出)

    • 2>&1 解释:

    • 最后的&表示后台运行

  • 可以在后台再开几个进程吗?

后台进程

  • 方向键↑可以找到上一条命令

  • 这些进程之间是什么关系呢

    • 可以查询得到吗?😜

总结

  • 进程查询

    • ps -elf 查看所有进程信息

    • ps -lf 查看本终端相关进程信息

  • 杀死进程

    • kill -9 PID 给进程发送死亡信号

  • 运行多个 python3 show_time.py 的话

    • 各个进程独立

    • python3 show_time.py 大概 8+M

    • 各占内存

  • 这些进程之间是什么关系呢?🤔

  • 我们下次再说!👋

  • 蓝桥->https://www.lanqiao.cn/courses/3584

  • github->https://github.com/overmind1980/oeasy-python-tutorial

  • gitee->https://gitee.com/overmind1980/oeasypython

  • 视频->https://www.bilibili.com/video/BV1CU4y1Z7gQ 作者:oeasy


[oeasy]python0032_杀死进程_进程后台运行不输出_nohup_ps_显示进程的评论 (共 条)

分享到微博请遵守国家法律