LINUX.ORG.RU

о выполнении или останове скрипта


0

1

подскажите, не пойму, даже как гуглить не знаю.

если я в скрипте делаю ссылку на новый скрипт, старый скрипт закончит работу или нет?

как быть если надо чтоб закончил или продолжил выполнение?

Спасибо.


>> если я в скрипте делаю ссылку на новый скрипт

O_o

Вызываешь другой?

старый скрипт закончит работу или нет?

Будет ждать выхода вызванного скрипта.

как быть если надо чтоб закончил или продолжил выполнение?

Проверять коды выхода.

GotF ★★★★★
()

если я в скрипте делаю ссылку на новый скрипт, старый скрипт закончит работу или нет?

Это не ссылка, а вызов/исполнение.

как быть если надо чтоб закончил или продолжил выполнение?

Как вариант вызывать скрипт в if и в случае не подходящего кода завершения exit.

tn1
()

> как быть если надо чтоб закончил или продолжил выполнение?

test1.sh:

echo aaaa
sh test2.sh
echo bbbb
exec sh test2.sh
echo cccc

test2.sh:

echo xxxx

$ sh test1.sh 
aaaa
xxxx
bbbb
xxxx

я правильно понял вопрос?

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

«Будет ждать выхода вызванного скрипта.»

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

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

> по Вашему, если в конце скрипта указать ссылку на его же запуск, то что будет? мильЁн скриптов запушенно?

А ты проверь. :D

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

> который что делает?

если кратко: test1.sh запускает test2.sh первый раз так, что после его завершения может продолжить работу; второй раз передает управление скрипту безвозвратно.

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

You've been warned. Лучше позаботиться о настройке limits перед запуском.

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

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

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

>> старый скрипт завершает работу

Оно бы не называлось форк-бомбой ;)

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

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

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

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

Добавить в конце команды &. Например, так:

/path/to/script.sh &
gentoo_root ★★★★★
()
Ответ на: комментарий от arsi

разве из-за символа выполнения в фоне &, первый скрипт не будет ожидать выполнения второго?

а зачем вообще синхронизация нужна?

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

без & первый скрипт стоит как замороженный

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

> разве из-за символа выполнения в фоне &, первый скрипт не будет ожидать выполнения второго?

не будет, если не попросишь ;)

> а зачем вообще синхронизация нужна?

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

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

не хотит скрипт в фоне выполнятся,
запускаю находясь в первом скрипте
/home/script &

и начинает он шуровать перед глазами.

Как заставить?

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

подскажите у кого какие идеи, не работает &

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

спасибо так и сделаю, просто уже голова не соображает и болит.

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