我有一个a.sh脚本,它在Debian机器中在后台用命令列表执行无限循环,我想使用另一个脚本b.sh以a.sh结尾。据我了解,pkill -f a.sh
是一种实现方式,但我想知道是否还有另一种实现方式
答案 0 :(得分:0)
man -k kill
显示了许多杀死进程的命令。请注意(1)
(常规命令)和(8)
(管理命令)。在我的系统上,我得到了(手动过滤):
killproc (8) - Send signals to processes by full path name
docker-container-kill (1) - Kill one or more running containers
docker-kill (1) - Kill one or more running containers
kill (1) - terminate a process
killall (1) - kill processes by name
killall5 (8) - send a signal to all processes.
pkill (1) - look up or signal processes based on name and other attributes
skill (1) - send a signal or report process status
答案 1 :(得分:0)
如果从b.sh运行a.sh,则可以获得a.sh的进程ID
b.sh
a.sh & # Execute a.sh in the background
APID=$! # $APID is now the pid of a.sh
#do some stuff or wait
kill -SIGTERM $APID # Give the process a chance to shut down
kill -SIGKILL $APID # Certain kill
这样,如果您有多个并发,则可以杀死a.sh的特定实例 实例。