Re: [freebsd] exit utility

2018-02-09 Пенетрантность Eugene Grosbein
09.02.2018 19:12, Eugene Grosbein пишет: > 09.02.2018 13:58, Irina Liakh пишет: > >> Пожалуй, лучшее решение тут будет такое: >> >> [ `cat` ] && echo nonzero string || echo zero string > > Ну раз пошла такая пьянка... Проверка [ $string ] && ... || ... > конечно, очень компактная, но для

Re: [freebsd] exit utility

2018-02-09 Пенетрантность Eugene Grosbein
09.02.2018 13:58, Irina Liakh пишет: > Пожалуй, лучшее решение тут будет такое: > > [ `cat` ] && echo nonzero string || echo zero string Ну раз пошла такая пьянка... Проверка [ $string ] && ... || ... конечно, очень компактная, но для "красивости" (а более для полноты картины) стоит упомянуть

Re: [freebsd] exit utility

2018-02-09 Пенетрантность Irina Liakh
On Fri, Feb 09, 2018 at 12:04:28PM +0200, George L. Yermulnik wrote: > > On Fri, 09 Feb 2018 at 10:18:21 (+0200), Irina Liakh wrote: > > > > Кстати, для проверки, является строка пустой или нет, существует builtin > > > способ. > > > [ $somestr ] > > > Вы про этот? > > Про "[ -z "${somestr}"

Re: [freebsd] exit utility

2018-02-09 Пенетрантность Irina Liakh
On Fri, Feb 09, 2018 at 12:05:38PM +0200, George L. Yermulnik wrote: > > С test более сложная конструкция :) > > Ну вот почему-то так вижу, хотелось бы передавать exitcode параметром, > > тем более что подобный механизм уже есть в builtin exit. > > Но ведь кому-то потом может прийтись это

Re: [freebsd] exit utility

2018-02-09 Пенетрантность George L. Yermulnik
Hello! On Fri, 09 Feb 2018 at 10:23:57 (+0200), Irina Liakh wrote: > > > Другими словами, в скрипте выполнять одно из двух действий в зависимости > > > от содержания строки, но используя для ветвления не test а exitcode. > > А чем test не подходит-то? Он возвращает exit status. Всё, что Вам > >

Re: [freebsd] exit utility

2018-02-09 Пенетрантность George L. Yermulnik
Hello! On Fri, 09 Feb 2018 at 10:18:21 (+0200), Irina Liakh wrote: > > Кстати, для проверки, является строка пустой или нет, существует builtin > > способ. > [ $somestr ] > Вы про этот? Про "[ -z "${somestr}" ]" или "[[ ${somestr} ]]" (если это баш в последнем варианте). > > Из любопытства:

Re: [freebsd] exit utility

2018-02-09 Пенетрантность Irina Liakh
On Fri, Feb 09, 2018 at 10:33:16AM +0200, Valentin Nechayev wrote: > > Fri, Feb 09, 2018 at 10:10:15, spell wrote about "Re: [freebsd] exit > utility": > > > Ммм.. Попробую перефразировать свою задачу: > > Требуется преобразовать строку в exitcode (0 или

Re: [freebsd] exit utility

2018-02-09 Пенетрантность Valentin Nechayev
hi, Fri, Feb 09, 2018 at 10:10:15, spell wrote about "Re: [freebsd] exit utility": > Ммм.. Попробую перефразировать свою задачу: > Требуется преобразовать строку в exitcode (0 или >0). > > Можно, конечно, так: > > [ $somestr = '0' ] && true || fal

Re: [freebsd] exit utility

2018-02-09 Пенетрантность Irina Liakh
On Fri, Feb 09, 2018 at 10:00:39AM +0200, George L. Yermulnik wrote: > > On Fri, 09 Feb 2018 at 10:10:15 (+0200), Irina Liakh wrote: > > > Другими словами, в скрипте выполнять одно из двух действий в зависимости > > от содержания строки, но используя для ветвления не test а exitcode. > > А чем

[freebsd] exit utility

2018-02-09 Пенетрантность Yaroslav Chernousov
Почему не создать функцию, которая проверяет нужное условие и возращает (return $code) явный код возврата? ___ freebsd mailing list freebsd@uafug.org.ua http://mailman.uafug.org.ua/mailman/listinfo/freebsd

Re: [freebsd] exit utility

2018-02-09 Пенетрантность Irina Liakh
On Fri, Feb 09, 2018 at 09:49:26AM +0200, George L. Yermulnik wrote: > > На вход поступает некая строка (всегда разные), надо определить, не пустая > > ли она, и в зависимости от этого ветвится код: > > > set_status `cat | wc -c` && echo zero string || echo nonzero string > > > Понятно, что

Re: [freebsd] exit utility

2018-02-09 Пенетрантность George L. Yermulnik
Hello! On Fri, 09 Feb 2018 at 10:10:15 (+0200), Irina Liakh wrote: > Другими словами, в скрипте выполнять одно из двух действий в зависимости > от содержания строки, но используя для ветвления не test а exitcode. А чем test не подходит-то? Он возвращает exit status. Всё, что Вам нужно, уже

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Irina Liakh
On Fri, Feb 09, 2018 at 09:19:13AM +0200, Valentin Nechayev wrote: > > (хотя всё-таки это дополнительная громоздкость, и для полноты счастья > > хотелось бы готового (даже не утилиту, а builtin, устанавливающий экситкод > > (переменную $?), наподобие builtin true/false)) > > Его не

Re: [freebsd] exit utility

2018-02-08 Пенетрантность George L. Yermulnik
Hello! On Fri, 09 Feb 2018 at 08:58:30 (+0200), Irina Liakh wrote: > Но всё равно есть ощущение, что builtin setstatus в арсенале не помешал бы.. Сформулируйте точную задачу и тогда Вам подскажут её решение без дендро-фекальных методов =) -- George L. Yermulnik [YZ-RIPE]

Re: [freebsd] exit utility

2018-02-08 Пенетрантность George L. Yermulnik
Hello! On Fri, 09 Feb 2018 at 08:27:52 (+0200), Irina Liakh wrote: > > 2. Какова цель затеи? > Читабельность кода :) > На вход поступает некая строка (всегда разные), надо определить, не пустая > ли она, и в зависимости от этого ветвится код: > set_status `cat | wc -c` && echo zero string ||

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Valentin Nechayev
hi, Fri, Feb 09, 2018 at 08:16:53, spell wrote about "Re: [freebsd] exit utility": > > $ set_status() { return $1; } > > $ set_status 26 > > $ echo $? > > 26 > > Спасибо, оно! > (затупила подумать в эту сторону) > (хотя всё-таки это допо

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Valentin Nechayev
hi, Fri, Feb 09, 2018 at 08:02:31, eugen wrote about "Re: [freebsd] exit utility": > > $ set_status() { return $1; } > > $ set_status 26 > > $ echo $? > > 26 > > +1 > > Только я бы обозвал функцию fail для похожести на true/false: И тогда fail

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Irina Liakh
On Fri, Feb 09, 2018 at 08:27:52AM +0200, Irina Liakh wrote: > На вход поступает некая строка (всегда разные), надо определить, не пустая > ли она, и в зависимости от этого ветвится код: > > set_status `cat | wc -c` && echo zero string || echo nonzero string > > Понятно, что можно так: > > [

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Irina Liakh
On Thu, Feb 08, 2018 at 01:44:51PM -0800, Maxim Sobolev wrote: > Hmm: > > > false_x() { > return "${1}" > } > > false_x 40 > echo ${?} > > > Не комильфо? Я бы не назвала это "false", т.к. код выхода может быть любой, в т.ч. и 0. Но идея - да, она.

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Irina Liakh
On Thu, Feb 08, 2018 at 10:54:56PM +0200, George L. Yermulnik wrote: > > 1. На чём скриптуете? sh > 2. Какова цель затеи? Читабельность кода :) На вход поступает некая строка (всегда разные), надо определить, не пустая ли она, и в зависимости от этого ветвится код: set_status `cat | wc -c` &&

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Irina Liakh
On Thu, Feb 08, 2018 at 10:02:15PM +0200, Valentin Nechayev wrote: > > Метод 1 (кажется, самый эффективный) > > $ set_status() { return $1; } > $ set_status 26 > $ echo $? > 26 Спасибо, оно! (затупила подумать в эту сторону) (хотя всё-таки это дополнительная громоздкость, и для полноты счастья

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Eugene Grosbein
09.02.2018 3:02, Valentin Nechayev пишет: > Thu, Feb 08, 2018 at 21:48:25, spell wrote about "[freebsd] exit utility": > >> В процессе скриптописания возникла надобность в утилите, подобной >> true/false, только с заданным значением кода выхода (пока обошлась

Re: [freebsd] exit utility

2018-02-08 Пенетрантность George L. Yermulnik
Hello! On Thu, 08 Feb 2018 at 14:15:44 (-0800), Maxim Sobolev wrote: > Ну чисто теоретически может у него там какой-то хитрый код который ${?} > обрабатывает? Напрямую ведь не заассайниш. 1. Топикстартерша =) 2. Я и говорю, что цель и задача не ясны. > -Max > 2018-02-08 13:53 GMT-08:00

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Maxim Sobolev
теоретически->гипотетически 2018-02-08 14:15 GMT-08:00 Maxim Sobolev : > Ну чисто теоретически может у него там какой-то хитрый код который ${?} > обрабатывает? Напрямую ведь не заассайниш. > > -Max > > 2018-02-08 13:53 GMT-08:00 George L. Yermulnik : > >>

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Maxim Sobolev
Ну чисто теоретически может у него там какой-то хитрый код который ${?} обрабатывает? Напрямую ведь не заассайниш. -Max 2018-02-08 13:53 GMT-08:00 George L. Yermulnik : > Hello! > > On Thu, 08 Feb 2018 at 13:44:51 (-0800), Maxim Sobolev wrote: > > > Hmm: > > > > >

Re: [freebsd] exit utility

2018-02-08 Пенетрантность George L. Yermulnik
Hello! On Thu, 08 Feb 2018 at 13:44:51 (-0800), Maxim Sobolev wrote: > Hmm: > > false_x() { > return "${1}" > } > false_x 40 > echo ${?} > > Не комильфо? Пока не ясна задача топикстартерши, не ясно зачем вообще заморачиваться именно "кодом выхода": если его нужно дальше в скрипте

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Maxim Sobolev
Hmm: false_x() { return "${1}" } false_x 40 echo ${?} Не комильфо? -Max 2018-02-08 12:54 GMT-08:00 George L. Yermulnik : > Hello! > > On Thu, 08 Feb 2018 at 21:48:25 (+0200), Irina Liakh wrote: > > > В процессе скриптописания возникла надобность в утилите,

Re: [freebsd] exit utility

2018-02-08 Пенетрантность George L. Yermulnik
Hello! On Thu, 08 Feb 2018 at 21:48:25 (+0200), Irina Liakh wrote: > В процессе скриптописания возникла надобность в утилите, подобной > true/false, только с заданным значением кода выхода (пока обошлась > вызовом "sh -c 'exit 123'"). > Если такая есть, просто ткните в неё, плиз. > Если нету,

Re: [freebsd] exit utility

2018-02-08 Пенетрантность Valentin Nechayev
Thu, Feb 08, 2018 at 21:48:25, spell wrote about "[freebsd] exit utility": > В процессе скриптописания возникла надобность в утилите, подобной > true/false, только с заданным значением кода выхода (пока обошлась > вызовом "sh -c 'exit 123'"). > Если такая есть, п

Re: [freebsd] exit utility

2018-02-08 Пенетрантность grayich
как вариант свою утилиту на сях сделать, простейший вариант: int main (void) { return 123; } а вообще возможно оно и не нужно, непонятна нужда сего On Thu, 8 Feb 2018 21:48:25 +0200 "Irina Liakh" wrote: > Всем добра! > > В процессе скриптописания возникла надобность в

[freebsd] exit utility

2018-02-08 Пенетрантность Irina Liakh
Всем добра! В процессе скриптописания возникла надобность в утилите, подобной true/false, только с заданным значением кода выхода (пока обошлась вызовом "sh -c 'exit 123'"). Если такая есть, просто ткните в неё, плиз. Если нету, скажите что это блажь, и суровые шелл-программисты вызывают целый