如何在某些目录下杀死进程?

时间:2018-05-12 04:56:21

标签: bash shell

我在某些目录下有多个python会话,比如

    lsof test11/
    COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME                          
    python   5838 user1  cwd    DIR   8,34     4096 19947539 test11                        
    python   5840 user1  cwd    DIR   8,34     4096 19947539 test11                        
    python   5843 user1  cwd    DIR   8,34     4096 19947539 test11                        
    python   5845 user1  cwd    DIR   8,34     4096 19947539 test11                        
    python   5846 user1  cwd    DIR   8,34     4096 19947539 test11                        
    python   5847 user1  cwd    DIR   8,34     4096 19947539 test11                        
    bash    68363 user1  cwd    DIR   8,34     4096 19947539 test11                        
    python  68510 user1  cwd    DIR   8,34     4096 19947539 test11 

我可以在一个简单的批处理脚本中杀死所有python会话(除了bash)吗?谢谢。

1 个答案:

答案 0 :(得分:0)

killlsof结合使用:

 kill $(lsof -c python -ta +D /test11/)

kill信号被发送到lsof的简洁输出(python pid列表),在/test11/目录中有效。