LINUX.ORG.RU

Создание процессов

 , ,


0

1

Есть скрипт в которой родительский процесс создает 10 дочерних. Потом выводит дерево процессов в последовательности bash -> родитель -> потомок (10).

#!bin/bash
for i in {1..10}; do ping localhost & done
pstree-a $PPID


Но проблема в том, что он создаёт да, но потом в терминале процесс создания не останавливается, а дерево не корректно выводится, не в той последовательности.

почему ты не задал этот вопрос в топике, где тебе подсказали этот скрипт?

Плодить топики - не очень хорошая затея.

v9lij ★★★★★
()
Ответ на: комментарий от v9lij

Я это тему создал, потому что в прошлой уже сообщений, по типу «зачем ты пошёл в эту сферу если нифига не шаришь» зашкаливало.

erikmkrt2000
() автор топика
Ответ на: комментарий от erikmkrt2000

Так а зачем вынес этот вопрос в отдельный топик? Разве это не дубль предыдущей твоей темы?

v9lij ★★★★★
()
Ответ на: комментарий от erikmkrt2000

Ну то, что ты создал отдельный топик, никак не отрицает то, что ты ошибся с профессией и тебе нужно другие скиллы качать, чтобы пригодиться в этой жизни.

В этом топике тебе скажут тоже самое :)

v9lij ★★★★★
()
Ответ на: комментарий от erikmkrt2000

прошлой уже сообщений, по типу «зачем ты пошёл в эту сферу если нифига не шаришь» зашкаливало.

Это будет в каждой теме. ЛОР такой, тут каждый считает своё мнение самым важным и единственно верным, и каждому из них лучше знать, чего ты хочешь.

mord0d ★★★★★
()

У тебя шебанг-строка не как у людей.

vvn_black ★★★★★
()

Умей сохранять хладнокровие, если ты не понял то сейчас тебе помогают.

Но проблема в том, что он создаёт да, но потом в терминале процесс создания не останавливается

dron@gnu:~$ for i in {1..10}; do ping localhost 1>/dev/null & done
[11] 421307
[12] 421308
[13] 421309
[14] 421310
[15] 421311
[16] 421312
[17] 421313
[18] 421314
[19] 421315
[20] 421316
dron@gnu:~$ for i in {1..10}; do ping localhost 1>/dev/null & done
[21] 421319
[22] 421320
[23] 421321
[24] 421322
[25] 421323
[26] 421324
[27] 421325
[28] 421326
[29] 421327
[30] 421328
dron@gnu:~$ 

В чём проблема?

а дерево не корректно выводится, не в той последовательности.

А с чего ты взял что будет последовательсность?

БЛЯТЬ ПРОСТО НЕЛЬЗЯ ОТВЕТИТЬ

Тебе никто не обязан отвечать, это же очевидно

Ты бы лучше описал, что тебе непонятно, мол почему вот это работает вот так разве не вот так должно. Больше конкретики, откуда мы знаем как ты видишь как оно должно работать

LINUX-ORG-RU ★★★★★
()

не в той последовательности

Для сохранения последовательности есть GNU Parallel.

Владимир, Вы?
mertvoprog
()
Ответ на: комментарий от LINUX-ORG-RU

Слушай а тут такое задание надо узнать ограничено ли число потомков, которые может создавать один процесс. Я так понял через bash это не сделать, или как то можно сделать,я просто не врубаюсь какую команду использовать или с чего начать.

erikmkrt2000
() автор топика
Ответ на: комментарий от erikmkrt2000

Если не понял что такое 1>/dev/null гугли про перенаправление

1 это выхлоп программы
2 это выхлоп ошибок программы
> запись в файл  
/dev/null "чёрная дыра" системы

Не перепутай с | пайпами, погули про bash и общее всё это

В закладки добавь https://www.opennet.ru/docs/RUS/bash_scripting_guide/ но не муштруй как учебник, а обращайся по мере необходимости, как сделать это как то. Учись использовать инфу как справочную прочти man man есть универсальные базовые вещи которые ты за несколько дней поймёшь и твои мучения от непонимания кончатся.

Инфы море, всю знать её невозможно и ненужно, узнавай всё по мере необходимости старайся вычленять нужное. А уже потом когда в базу въедешь у самого появитсяжелание что-то более осмысленно почитать прям так по хорошему. В начале тебе это не нужно, нужны лишь базовые знания которые покроют тебе 99% потребностей

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от erikmkrt2000

надо узнать ограничено ли число потомков, которые может создавать один процесс

Очевидно же, что требуется создавать процессы потомки до тех пор, пока не возникнет ошибка. Число это конечно ограничено лимитом для пользователя.

no-such-file ★★★★★
()

Вообще в твоем предыдущем посте задание написать программу, запускающую 10 потомков. После исследовать ее посредством shell. Здесь же у тебя сценарий запускающий 10 программ.

anonymous
()
Ответ на: комментарий от erikmkrt2000

Слушай а тут такое задание надо узнать ограничено ли число потомков

Это лишь 1 вопрос из тысячи что тебя ждут гугли где прописаны ограничения на процессы в линукс и так далее со всем иным. Даю подсказку «лимиты» где они прописаны и как и понять загугли.

Не старайся хопом понять что да как сразу.

На твой вопрос 120 первых ссылок в гугле. Просто надо не поленится и почитать. Чем больше будешь читать тем больше будет понимание и тем меньше неудобства от того что непонятно куда тыкать и чё вобще вокруг происходит.

LINUX-ORG-RU ★★★★★
()
Ответ на: комментарий от anonymous

Кстати да.

ТС -

Потомок - это когда программа(процесс) A запускает 10 программ (процессов) A. То есть самого себя, копию.

А у тебя «программа»(процесс) A запускает 10 программ B (процессов)

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от mord0d

Что интересно, что на самом деле всем плевать. Так что тут ты скорее всего ошибаешься в истинных мотивах. Пацана просто шеймят чтобы в нем взыграло хоть какое-то самоуважение и он пошел делать уроки.

anonymous
()
Ответ на: комментарий от anonymous

тут ты скорее всего ошибаешься

Я не замахивался на мотивы. Я лишь рассказал топикстартеру о том, к какому впечатлению он рано или поздно придёт. А на какую сторону встанет — зависит только от него.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

сектантам лишь бы найти какую-то сторону, чтоб на неё встать…

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.