From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Vitaly Lipatov Organization: ALT Linux Team To: ALT Devel discussion list Subject: Re: [devel] =?koi8-r?b?7yDQ0snT18HJ18HOyckg0MXSxc3Fzs7ZyCDXIMPJy8zByCDOwQ==?= bash Date: Tue, 27 Dec 2005 11:30:50 +0300 User-Agent: KMail/1.8.1 References: <200512271107.38272.lav@altlinux.ru> <20051227111932.18751fc3.dfo@antex.ru> In-Reply-To: <20051227111932.18751fc3.dfo@antex.ru> MIME-Version: 1.0 Content-Type: text/plain; charset="koi8-r" Content-Transfer-Encoding: 8bit Content-Disposition: inline Message-Id: <200512271130.52466.lav@altlinux.ru> X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Dec 2005 08:30:44 -0000 Archived-At: List-Archive: List-Post: On Tuesday 27 December 2005 11:19, Sergey Pinaev wrote: > On Tue, 27 Dec 2005 11:07:35 +0300 > > Vitaly Lipatov wrote: > > Вот и не угадали - выведен она > > Зачем угадывать? С | спавнится новый шелл. > > > В /usr/bin/sisyphus_relink наблюдаем такой код: > > cat "$list" |while read n; do > > f="files/$rfiles/$n" > > [ -f "$f" ] || continue > > $debug ln -s $verbose "$r/$n" "$d/" || rc=1 > > done > > return $rc > > > > получается rc тоже не присвоится и в коде ошибка? > > Да, в родительском шелле rc будет не тот, который был > в шелле, исполняющем while. То есть вешаем баг на /usr/bin/sisyphus_relink > > > Но как же всё таки присваивать переменные внутри таких > > циклов? > > Не делать таких циклов. > for n in `cat "$list"`; do ... Дело в том что задача такова: читать из файла, содержащего несколько значений в строке через пробел (а это наиболее удобно через read), а for позволит только одним значением оперировать (или ему можно разделитель поменять?) -- Lav Виталий Липатов Санкт-Петербург GNU! ALT Linux Team! WINE! LaTeX! LyX! http://freesource.info