Загрузка данных


#!/bin/bash

# Рекурсивная функция для создания дерева процессов
create_process_tree() {
    local level=$1
    local max_level=$2
    local parent_pid=$$
    
    echo "Уровень $level: PID=$$, PPID=$PPID"
    
    if [ $level -lt $max_level ]; then
        # Создание дочерних процессов на следующем уровне
        for i in 1 2; do
            (
                create_process_tree $((level + 1)) $max_level
            ) &
            child_pid=$!
            echo "  Создан дочерний процесс PID=$child_pid на уровне $((level + 1))"
        done
        
        # Ожидание завершения дочерних процессов
        wait
    fi
}

echo "=== Создание дерева процессов ==="
echo "Корневой процесс: PID=$$"
echo ""

# Создание дерева с глубиной 3 уровня
create_process_tree 1 3

echo ""
echo "=== Дерево процессов создано ==="
echo "Просмотр структуры:"
echo ""

# Показать созданную иерархию
pstree -p $$