几年前,当我开始尝试 Linux 时,大多数教程和经验丰富的老同事都建议使用“kill”命令,这有点像 Windows 中进程管理器的替代品。但我也(不确定是否正确)对这个命令有一种沾沾自喜的感觉。
然而,根据我自己的询问,我很快就开始使用“killall”功能,因为我总是遇到 PID 问题。然而我刚刚了解到还有一个命令“pkill”,它基本上做同样的事情。我还了解到使用“kill”的正确方法是使用“ps -A |” grep ...'。
但是这个过程不是与仅使用“pkill”或“killall”完全相同吗?(我读过“killall”和“pkill”之间有什么区别?,所以我知道这两个有点不同。)
当我们仍然需要进行识别:进程名称 -> PID 才能使用“kill”时,为什么要使用kill?
在 Kubuntu 14.04 和 14.10 中,我停止了 X 服务器
sudo /etc/init.d/lightdm stop
Run Code Online (Sandbox Code Playgroud)
但它不再起作用了。如何阻止它,安装图形驱动程序?
我想编写一个脚本,除其他外,用 evince 打开一个 PDF 文件,然后关闭终端。
到目前为止,我有:
evince &
sleep 2
kill -9 $PPID
Run Code Online (Sandbox Code Playgroud)
但是当终端关闭时, evince 关闭。我尝试使用disown -h -a但它不起作用。
ubuntuone 守护进程占用了我 100% 的 CPU。我联系了 ubuntuone 支持,但当他们正在寻找解决方案时,我想杀死它,以免影响我的工作。
我不能杀死 -9 它,因为它会在新的 PID 下重生。
我确实从我的启动应用程序设置中删除了它,但它在启动时仍在运行。
kill -9 pid和命令 和有什么不一样kill pid?他们有不同的行为吗?我知道 -9 代表“SIGKILL”信号
我有一个小的客户端 - 服务器代码。在服务器部分,有一个命令daemon(1,1)将它作为守护程序运行。可执行文件只是a.out. 我怎样才能杀死这个进程?
通常ps不会显示此过程,但我知道它正在运行,因为我无法再使用 IP 端口对。
我知道这听起来像是一个愚蠢的问题,但出于好奇,gnome-system-monitor从系统监控程序内部终止进程是否安全?
我问这个是因为今天我打开gnome-system-monitor程序并看到“进程”选项卡gnome-system-monitor下列出的进程,当然系统监视器程序也允许您结束和/或杀死进程,所以我想知道您是否杀死了gnome-system-monitor从系统监控程序里面会发生什么?
我没有测试这个,因为担心可能会出错,但是如果确实出错了,那会有多糟糕?
我们会处理一个完整的系统故障还是一个简单的崩溃?
我希望在下面的第三个命令中看不到任何内容,但显然我的期望是不正确的。为什么?
$ sudo fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: joeuser 2339 F.... pulseaudio
/dev/snd/controlC2: joeuser 2339 F.... pulseaudio
/dev/snd/pcmC0D7p: joeuser 2339 F...m pulseaudio
/dev/snd/pcmC2D0c: joeuser 2339 F...m pulseaudio
/dev/snd/pcmC2D0p: joeuser 2339 F...m pulseaudio
$ kill 2339
$ sudo fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: joeuser 2339 F.... pulseaudio
/dev/snd/controlC2: joeuser 2339 F.... pulseaudio
/dev/snd/pcmC0D7p: joeuser 2339 F...m pulseaudio
/dev/snd/pcmC2D0c: joeuser 2339 F...m pulseaudio
/dev/snd/pcmC2D0p: joeuser 2339 F...m pulseaudio
Run Code Online (Sandbox Code Playgroud) 我试图杀死一个进程使用 pkill -9 <pid>
每当我运行该命令时,它什么都不返回,并且进程也不会被终止。
我现在如何进行?
编辑:
尝试pkill与 pid一起使用时我很愚蠢。pkill采用进程的名称而不是 pid。kill是接受的答案中指出的采用 pid 的命令。
然而,另一个答案实际上很好地解释了 pkill 不杀死的实际可能性,并且写得很好。
我想用所有不同的名称杀死 3 个进程,根本没有共同点。我该怎么做呢?grep 无法捕获它们,因为没有任何共同之处,或者有没有办法让它抓住所有它们?
kill ×10
process ×3
bash ×2
command-line ×2
16.04 ×1
evince ×1
services ×1
ubuntu-one ×1
xorg ×1