LINUX.ORG.RU

bash скрипт для установки проги


0

0

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

#!/bin/bash

./congfigure

make

make install

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

anonymous

/ $ cd /home && echo YES
YES
/home $ cd /home/GGG && echo YES
bash: cd: /home/GGG: No such file or directory
/home $ cd /home || echo NO
/home $ cd /home/GGG || echo NO
bash: cd: /home/GGG: No such file or directory
NO
/home $

Мысль ясна?

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

Еще можно анализировать переменную $?
Если в ней содержится 0, то предыдущая команда выполнилась без ошибок, если что-то отлично от нуля (1), то не выполнилась.

То есть вам нужно вот что:

#!/bin/bash
./congfigure && make && make install

Только вот я считаю что не нужны такие скрипты. А если юзер хочет сделать не просто ./configure, а ./configure --prefix=/usr?

А если ./configure --prefix=/usr/local?

Не городите костылей и идите по протоптанной дорожке.

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

Баян уже сказали,но зачем 2 раза маке?

не проще ./configure&&make install ?

Быстрее писать ;)

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

>> Вы становитесь счастливым обладателем Slackware

ерунда.

use package manager, Luke

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