Re: шелл-скрипт квесчн.
Alexander GQ Gerasiov -> debian-russian@lists.debian.org @ Fri, 26 Jan 2007 10:10:12 +0300:
>> > #!/bin/sh
>> > cmd1 | cmd2
>> > if cmd1 закончилось с ошибкой;then
>> > exit 1
>> > else
>> > exit 0
>> > fi
>> >
>> > Только очень не хочется для этого файлы создавать. Можно еще из
>> > сабшелла SIG_USR1 послать, но тоже как-то кажется слишком
>> > громоздким =\
>>
>> { cmd1 || error=1 }|cmd2
>>
>> if test "$error" = 1; then ...
AGG> Вот сразу видно, что ты даже не пробовал запускать.
AGG> Во-первых ошибка синтаксическая, во-вторых, команда перед перед пайпом
AGG> запустится в сабшелле и после пайпа error будет неопределен.
А вот не надо грязи. {} - это в том же процессе. В отличие от ().
Другое дело, что это опять не чистый sh, а в более других шеллах есть
более прямые методы.
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
Юзер упорствует в хождении по граблям. Образовавшиеся шишки он считает
трудовыми мозолями. (С)энта
Reply to: