如何在LinuxShell中强制python退出

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在LinuxShell中强制python退出相关的知识,希望对你有一定的参考价值。

有一个test.py文件,功能就是一个死循环。
在linuxShell中运行python test.py后怎么强制退出?
ctrl+C貌似不行。。。

    另开一个终端,ps查看test.py的进程号,然后kill -9杀死该进程。

    或直接退出当前运行终端。

追问

请教,为什么其他一些程序在shell中用命令跑起来后,可以用ctrl+C终止,而python不行?

追答

ctrl+C其实是发送SIGTERM的信号,而SIGTERM信号可以被用户态的进程所截获并且可以由用户去控制收到信号后的处理(如直接忽视,直接忽视就像你看到的,进程不会退出)。
如果对这方面感兴趣,可以看看LINUX的信号机制。

参考技术A [root@node2 ~]# python
Python 2.6.6 (r266:84292, Feb 22 2013, 00:00:18)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> quit()

输入quit()即可正常退出追问

抱歉,你理解错意思了。。。。

追答

确实,不好意思。

参考技术B root@iZ23he122ynZ:~# ps -ef|grep python
root     16346     1  0 May28 ?        00:00:11 python WebMain.py 81
root     16871 16849  0 08:44 pts/0    00:00:00 grep --color=auto python
root@iZ23he122ynZ:~# 

想要结束 root     16346     1  0 May28 ?        00:00:11 python WebMain.py 81
那就直接运行命令 ps -ef|grep WebMain.py|grep -v grep|cut -c 9-15|xargs kill -9

这些可以写到shell 命令中

参考技术C 找到解决方法没有,找到了分享一下 参考技术D 只能关闭当前控制台,可以先按ctrl+shift+T创建一个控制台在关

以上是关于如何在LinuxShell中强制python退出的主要内容,如果未能解决你的问题,请参考以下文章

我如何强制我的代码在 python 中打印

在VB中,如何强制退出循环结构

MFC在视类中如何退出程序

python def定义完函数后怎么退出,以及如何调用函数

为啥在linux shell中ssh远程执行脚本时退出[重复]

mac强制退出windowserver