我相信我可以从父进程分叉10个子进程.
以下是我的代码:
#/bin/sh
fpfunction(){
n=1
while (($n<20))
do
echo "Hello World-- $n times"
sleep 2
echo "Hello World2-- $n times"
n=$(( n+1 ))
done
}
fork(){
count=0
while (($count<=10))
do
fpfunction &
count=$(( count+1 ))
done
}
fork
Run Code Online (Sandbox Code Playgroud)
但是,如何从我刚创建的每个子进程中获取pid?
谢谢.
Joh*_*ica 48
存储了后台子进程的PID $!
.
fpfunction &
child_pid=$!
parent_pid=$$
Run Code Online (Sandbox Code Playgroud)
反过来,用于$PPID
从子进程获取父进程的PID.
fpfunction() {
local child_pid=$$
local parent_pid=$PPID
...
}
Run Code Online (Sandbox Code Playgroud)
另外,对于它的价值,你可以将循环语句组合成一个类似C的for循环:
for ((n = 1; n < 20; ++n)); do
do
echo "Hello World-- $n times"
sleep 2
echo "Hello World2-- $n times"
done
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
37705 次 |
最近记录: |