Добрый день.
Пишу .sh файл. Возник такой вопрос:
Если в файле 3 строки:
./script1
rm file1
./script2
Как выполняется такая последовательность?
Т.е. надо чтобы полностью выполнился скрипт1, потом удалился файл и после этого выполнился скрипт2.
Происходит ожидание выполнения предыдущего шага?
Или надо написать вот так:
./script1
wait $!
rm file1
wait $!
./script2
Как выполняются строки в sh файле? (есть ли ожидание выполнения предыдущей строки?)
Модераторы: /dev/random, Модераторы разделов
Re: Как выполняются строки в sh файле?
следующая строка выполнится после того как предыдущая выполнится.
Re: Как выполняются строки в sh файле?
я думаю что новая строка - это тоже самое что и точка с запятой, то есть по сути такая запись ничем не будет отличаться:
./script1; rm file1; ./script2
а вот выполнится ли script1 или нет - это не важно.
чтоб перешло к другой команде достаточно чтоб предыдущая команда завершила свою работу.
то есть под выполнением следует понимать не то, отработала ли программа правильно или как ожидалось, а отработала ли вообще и даже если она отработала с ошибкой, то после этого начнет выполняться следующая программа.
./script1; rm file1; ./script2
а вот выполнится ли script1 или нет - это не важно.
чтоб перешло к другой команде достаточно чтоб предыдущая команда завершила свою работу.
то есть под выполнением следует понимать не то, отработала ли программа правильно или как ожидалось, а отработала ли вообще и даже если она отработала с ошибкой, то после этого начнет выполняться следующая программа.
Re: Как выполняются строки в sh файле?
Посмотрите здесь - программирование на bash в linux