Если мы хотим , чтобы fork ничего из внутри Баш скрипт (или даже в командной строке), мы можем просто окружить его с $ () или бэк-тиков. Например;

echo $(ls) - это раскроет текущую среду и запустит ls в (раздвоенном) подоболочке

Как мы можем использовать vfork (http://man7.org/linux/man-pages/man2/vfork.2.html) вместо стандартной функциональности форка?

1 ответ1

0

Выполнение grep -Ri vfork в исходном коде bash не находит никаких совпадений , поэтому нет никакого способа напрямую использовать vfork из bash.

Если вы просто хотите что-то, что вызовет дочерний элемент и заблокирует родительский, то ваш пример подоболочки уже делает это. В противном случае echo , вероятно, получит в лучшем случае неполные результаты.

Вы также можете запустить команду в фоновом режиме с помощью & а затем использовать wait чтобы получить родительский блок до завершения дочернего процесса.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .