如何'杀死-STOP并杀死-CONT'工作?

时间:2016-01-20 10:35:20

标签: linux kill

我正面临一个问题。 我们有一个干净的脚本用于清理旧文件,有时我们需要将其停止并稍后再次启动它。像下面的过程一样。我们在check.sh中使用kill -STOP $pidkill -CONT $pid来控制clean.sh,$pid是clean.sh的所有pid(在那里,它们是23939,25804):

root      4321  0.0  0.0  74876  1184 ?        Ss    2015   0:25 crond
root     23547  0.0  0.0 102084  1604 ?        S     2015   0:00  \_ crond
root     23571  0.0  0.0   8728   972 ?        Ss    2015   0:00      \_ /bin/bash -c bash /home/test/sbin/check.sh >>/home/test/log/check.log 2>&1
root     23577  0.0  0.0   8732  1092 ?        S     2015   0:00          \_ bash /home/test/sbin/check.sh
root     23939  0.0  0.0   8860  1192 ?        S     2015   0:45              \_ bash /home/test/bin/clean.sh 30
root     25804  0.0  0.0   8860   620 ?        S     2015   0:00                  \_ bash /home/test/bin/clean.sh 30
root     25805  0.0  0.0  14432   284 ?        T     2015   0:00                      \_ ls -d ./455bb4cba6142427156d2b959b8b0986/120x60/ ./455bb4cba6142427156d2b959b8b0986/80x
root     25808  0.0  0.0   3816   432 ?        S     2015   0:00                      \_ wc -l

check.sh在几小时后停止了clean.sh,check.sh启动了clean.sh,但有一个奇怪的事情,在停止并继续之后,有一个子进程'ls -d ....',它还在停止。

你能告诉我它是否是由错误使用信号引起的吗?我该如何修改它?

1 个答案:

答案 0 :(得分:1)

好吧,就像我的描述一样不清楚,我的英语不好...... 不确定是什么原因,但有一种方法可以解决它: 杀死-CONT $ pid pkill -CONT -P $ pid

这将继续子进程。