09.02.2018 19:12, Eugene Grosbein пишет:
> 09.02.2018 13:58, Irina Liakh пишет:
>
>> Пожалуй, лучшее решение тут будет такое:
>>
>> [ `cat` ] && echo nonzero string || echo zero string
>
> Ну раз пошла такая пьянка... Проверка [ $string ] && ... || ...
> конечно, очень компактная, но для
09.02.2018 13:58, Irina Liakh пишет:
> Пожалуй, лучшее решение тут будет такое:
>
> [ `cat` ] && echo nonzero string || echo zero string
Ну раз пошла такая пьянка... Проверка [ $string ] && ... || ...
конечно, очень компактная, но для "красивости" (а более для полноты картины)
стоит упомянуть
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}"
On Fri, Feb 09, 2018 at 12:05:38PM +0200, George L. Yermulnik wrote:
> > С test более сложная конструкция :)
> > Ну вот почему-то так вижу, хотелось бы передавать exitcode параметром,
> > тем более что подобный механизм уже есть в builtin exit.
>
> Но ведь кому-то потом может прийтись это
Hello!
On Fri, 09 Feb 2018 at 10:23:57 (+0200), Irina Liakh wrote:
> > > Другими словами, в скрипте выполнять одно из двух действий в зависимости
> > > от содержания строки, но используя для ветвления не test а exitcode.
> > А чем test не подходит-то? Он возвращает exit status. Всё, что Вам
> >
Hello!
On Fri, 09 Feb 2018 at 10:18:21 (+0200), Irina Liakh wrote:
> > Кстати, для проверки, является строка пустой или нет, существует builtin
> > способ.
> [ $somestr ]
> Вы про этот?
Про "[ -z "${somestr}" ]" или "[[ ${somestr} ]]" (если это баш в
последнем варианте).
> > Из любопытства:
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 или
hi,
Fri, Feb 09, 2018 at 10:10:15, spell wrote about "Re: [freebsd] exit utility":
> Ммм.. Попробую перефразировать свою задачу:
> Требуется преобразовать строку в exitcode (0 или >0).
>
> Можно, конечно, так:
>
> [ $somestr = '0' ] && true || fal
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.
>
> А чем
Почему не создать функцию, которая проверяет
нужное условие и возращает (return $code) явный код возврата?
___
freebsd mailing list
freebsd@uafug.org.ua
http://mailman.uafug.org.ua/mailman/listinfo/freebsd
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
>
> > Понятно, что
Hello!
On Fri, 09 Feb 2018 at 10:10:15 (+0200), Irina Liakh wrote:
> Другими словами, в скрипте выполнять одно из двух действий в зависимости
> от содержания строки, но используя для ветвления не test а exitcode.
А чем test не подходит-то? Он возвращает exit status. Всё, что Вам
нужно, уже
On Fri, Feb 09, 2018 at 09:19:13AM +0200, Valentin Nechayev wrote:
> > (хотя всё-таки это дополнительная громоздкость, и для полноты счастья
> > хотелось бы готового (даже не утилиту, а builtin, устанавливающий экситкод
> > (переменную $?), наподобие builtin true/false))
>
> Его не
Hello!
On Fri, 09 Feb 2018 at 08:58:30 (+0200), Irina Liakh wrote:
> Но всё равно есть ощущение, что builtin setstatus в арсенале не помешал бы..
Сформулируйте точную задачу и тогда Вам подскажут её решение без
дендро-фекальных методов =)
--
George L. Yermulnik
[YZ-RIPE]
Hello!
On Fri, 09 Feb 2018 at 08:27:52 (+0200), Irina Liakh wrote:
> > 2. Какова цель затеи?
> Читабельность кода :)
> На вход поступает некая строка (всегда разные), надо определить, не пустая
> ли она, и в зависимости от этого ветвится код:
> set_status `cat | wc -c` && echo zero string ||
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
>
> Спасибо, оно!
> (затупила подумать в эту сторону)
> (хотя всё-таки это допо
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
On Fri, Feb 09, 2018 at 08:27:52AM +0200, Irina Liakh wrote:
> На вход поступает некая строка (всегда разные), надо определить, не пустая
> ли она, и в зависимости от этого ветвится код:
>
> set_status `cat | wc -c` && echo zero string || echo nonzero string
>
> Понятно, что можно так:
>
> [
On Thu, Feb 08, 2018 at 01:44:51PM -0800, Maxim Sobolev wrote:
> Hmm:
>
>
> false_x() {
> return "${1}"
> }
>
> false_x 40
> echo ${?}
>
>
> Не комильфо?
Я бы не назвала это "false", т.к. код выхода может быть любой, в т.ч. и 0.
Но идея - да, она.
On Thu, Feb 08, 2018 at 10:54:56PM +0200, George L. Yermulnik wrote:
>
> 1. На чём скриптуете?
sh
> 2. Какова цель затеи?
Читабельность кода :)
На вход поступает некая строка (всегда разные), надо определить, не пустая
ли она, и в зависимости от этого ветвится код:
set_status `cat | wc -c` &&
On Thu, Feb 08, 2018 at 10:02:15PM +0200, Valentin Nechayev wrote:
>
> Метод 1 (кажется, самый эффективный)
>
> $ set_status() { return $1; }
> $ set_status 26
> $ echo $?
> 26
Спасибо, оно!
(затупила подумать в эту сторону)
(хотя всё-таки это дополнительная громоздкость, и для полноты счастья
09.02.2018 3:02, Valentin Nechayev пишет:
> Thu, Feb 08, 2018 at 21:48:25, spell wrote about "[freebsd] exit utility":
>
>> В процессе скриптописания возникла надобность в утилите, подобной
>> true/false, только с заданным значением кода выхода (пока обошлась
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
теоретически->гипотетически
2018-02-08 14:15 GMT-08:00 Maxim Sobolev :
> Ну чисто теоретически может у него там какой-то хитрый код который ${?}
> обрабатывает? Напрямую ведь не заассайниш.
>
> -Max
>
> 2018-02-08 13:53 GMT-08:00 George L. Yermulnik :
>
>>
Ну чисто теоретически может у него там какой-то хитрый код который ${?}
обрабатывает? Напрямую ведь не заассайниш.
-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:
>
> >
> >
Hello!
On Thu, 08 Feb 2018 at 13:44:51 (-0800), Maxim Sobolev wrote:
> Hmm:
>
> false_x() {
> return "${1}"
> }
> false_x 40
> echo ${?}
>
> Не комильфо?
Пока не ясна задача топикстартерши, не ясно зачем вообще заморачиваться
именно "кодом выхода": если его нужно дальше в скрипте
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:
>
> > В процессе скриптописания возникла надобность в утилите,
Hello!
On Thu, 08 Feb 2018 at 21:48:25 (+0200), Irina Liakh wrote:
> В процессе скриптописания возникла надобность в утилите, подобной
> true/false, только с заданным значением кода выхода (пока обошлась
> вызовом "sh -c 'exit 123'").
> Если такая есть, просто ткните в неё, плиз.
> Если нету,
Thu, Feb 08, 2018 at 21:48:25, spell wrote about "[freebsd] exit utility":
> В процессе скриптописания возникла надобность в утилите, подобной
> true/false, только с заданным значением кода выхода (пока обошлась
> вызовом "sh -c 'exit 123'").
> Если такая есть, п
как вариант свою утилиту на сях сделать, простейший вариант:
int main (void) {
return 123;
}
а вообще возможно оно и не нужно, непонятна нужда сего
On Thu, 8 Feb 2018 21:48:25 +0200
"Irina Liakh" wrote:
> Всем добра!
>
> В процессе скриптописания возникла надобность в
Всем добра!
В процессе скриптописания возникла надобность в утилите, подобной
true/false, только с заданным значением кода выхода (пока обошлась
вызовом "sh -c 'exit 123'").
Если такая есть, просто ткните в неё, плиз.
Если нету, скажите что это блажь, и суровые шелл-программисты вызывают
целый
31 matches
Mail list logo