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: [EMAIL PROTECTED]

Юзер упорствует в хождении по граблям. Образовавшиеся шишки он считает
трудовыми мозолями. (С)энта


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Ответить