我有一个简单的 shell 脚本
#!/bin/bash
sh -c "sleep 60" &
exec sleep 120
在使用pstree
命令时,我发现了类似
`-sleep(11681)---sleep(11682)
第一个睡眠是由于sh -c
,所以即使我在后台执行了那个睡眠,它现在也是我的exec
睡眠的父级。
问题:如何分离第一个睡眠并使其pstree
具有类似
-sleep(11681)
-sleep(11682)
答案1
第一个 sleep 已经分离。发生的事情是 是sleep 60
运行脚本的 shell 的父级,然后 用exec
替换该 shell sleep 120
,因此 yoursleep 120
现在是 your 的父级sleep 60
。要使它们在输出中处于同一级别pstree
,只需将 设置为背景,sleep 120
就像您对 所做的那样,sleep 60
而不是exec
'ing 它。
答案2
睡眠 60 分钟,睡眠 120 分钟,然后等待