Como executar um monte de processos de shell fictícios hierárquicos (processo de outro processo, etc.)?

0

Gostaria de executar vários processos em que cada processo está executando outro, portanto, ele criará uma ramificação de processo longa.

Eu tentei:

$ bash -c '(bash -c "sleep 20"); sleep 20' &
$ pstree $(pgrep -fn bash)

que cria um processo pai e um filho, mas existe algum truque ou maneira mais fácil de fazer isso geraria mais 10-20 processos sem lutar muito com a sintaxe?

    
por kenorb 27.08.2015 / 11:05

1 resposta

1

Você pode criar um script recursivo. por exemplo, no arquivo /tmp/run

#!/bin/bash
depth=${1:-5}
f(){
 let depth--
 if [ $depth -gt 0 ]
 then $0 $depth
 else sleep 10
 fi
}
f

, em seguida, chmod +x /tmp/run e /tmp/run 10 .

    
por 27.08.2015 / 11:54