让我们说:
sudo nohup ./start.sh process1
sudo nohup ./start.sh process2
sudo nohup ./start.sh process3
./start.sh
正在运行一个永远循环的python文件。
现在,如何杀死' process2'?
我可以killall python
,所有这些都会被关闭。
是否有可能杀死'proccess2'特别是以某种方式标记它或什么?
答案 0 :(得分:0)
你可以试试这个;
user@host:/tmp/pythontest$ cat start.sh
#!/bin/sh
/usr/bin/python /tmp/pythontest/$1 &
user@host:/tmp/pythontest$ ./start.sh test1.py
user@host:/tmp/pythontest$ ./start.sh test1.py
user@host:/tmp/pythontest$ ./start.sh test1.py
user@host:/tmp/pythontest$ ps -ef | grep -i python
user 19447 2062 0 14:37 pts/32 00:00:00 /usr/bin/python /tmp/pythontest/test1.py
user 19449 2062 0 14:37 pts/32 00:00:00 /usr/bin/python /tmp/pythontest/test1.py
user 19451 2062 0 14:37 pts/32 00:00:00 /usr/bin/python /tmp/pythontest/test1.py
user 19454 11980 0 14:38 pts/32 00:00:00 grep --color=auto -i python
第二个字段是pid编号。
user@host:/tmp/pythontest$ kill -9 19449
user@host:/tmp/pythontest$ ps -ef | grep -i python
user 19447 2062 0 14:37 pts/32 00:00:00 /usr/bin/python /tmp/pythontest/test1.py
user 19451 2062 0 14:37 pts/32 00:00:00 /usr/bin/python /tmp/pythontest/test1.py
user 19457 11980 0 14:38 pts/32 00:00:00 grep --color=auto -i python