在后台运行的 pid 的 UNIX 命令

在后台运行的 pid 的 UNIX 命令

我在 Unix 上后台运行各种程序。每个程序都输出到不同的文件中,例如:

python eventsim.py > logfile &
python eventsim.py > log1 &

现在假设我想终止输出到文件 log1 的进程,但我不再记得它的 pid 是什么。有什么方法可以检索该信息吗?

答案1

检查工作命令将打印当前正在运行的作业。

jobs

获取进程 ID 后,你可以使用韋克或者

您还可以使用附言grep, 或者程序包(如果可供使用的话):

pgrep eventsim.py

注意:这与编程无关,最好在https://superuser.com/

答案2

您应该能够使用以下命令查看完整的命令行ps(1):

ps auxwww | grep '[l]og1'

PID 将位于第二列。

答案3

尝试这个命令:

ps aux | grep 'eventsim.py' | awk '{print $2,$11,$12}'

输出为:

1595 python eventsim.py

1595 是 pid 编号

现在:

kill <pid-number>

并且该过程将终止

答案4

我找到了解决方法:kill -STOP [pid] 提供了确认信息,显示了我正在寻找的内容。谢谢您的帮助!

相关内容