The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

08.01.2019 11:19  Релиз командного интерпретатора Bash 5.0

После двух с половиной лет разработки опубликована новая версия командного интерпретатора GNU Bash 5.0, используемого по умолчанию в большинстве дистрибутивов Linux. Одновременно состоялся релиз библиотеки readline 8.0, применяемой в bash для организации редактирования командной строки.

Значительное изменение номера версии Bash связано с внесением изменений, нарушающих обратную совместимость. В частности, в новой версии переработан код, связанный с обработкой ссылочных переменных nameref, что привело к отдельным изменениям поведения при использовании nameref (например, цикл разбора имён nameref внутри функций теперь приводит к определению переменных не в локальном, а в глобальном контексте). Кроме того, по умолчанию переменные BASH_ARGC и BASH_ARGV теперь выставляются только при включении расширенного отладочного режима, что позволило избавиться от проблем с производительностью при передаче скриптами большого числа аргументов. Для работы нового выпуска необходимо наличие свежей библиотеки readline, т.е. для установки Bash 5.0 в дистрибутивах с выпусками readline до 8.0 потребуется переустановка readline или встраивание новой версии библиотеки при сборке Bash.

Из ключевых улучшений можно отметить:

  • Предложены новые переменные окружения: BASH_ARGV0 (принимает значение $0), EPOCHSECONDS (эпохальное время в секундах) и EPOCHREALTIME (эпохальное время с точностью до микросекунд);
  • Во встроенную команду "history" добавлена поддержка выборочного удаления записей из БД с историей операций ("history -d start-end") и возможность указания отрицательных значений в качестве смещения первой удаляемой записи относительно конца списка (например, "-1" указывает на предыдущую команду);
  • Добавлена опция "localvar_inherit", при установке которой локальные переменные наследуют значение переменный с теми же именами, определёнными в вышестоящей области видимости;
  • Добавлена опция "assoc_expand_once", при установке которой оболочка осуществляет раскрытие индексов ассоциативных массивов только один раз;
  • Включена по умолчанию опция "globasciiranges", допускающая использование масок для определения диапазонов символов ([a-z]);
  • Добавлены встроенные реализации команд rm, stat, seq и fdflags;
  • Во встроенной команде "wait" обеспечена возможность ожидания замещения последнего процесса и добавлена опция "-f" для ожидания завершения процесса/работы вместо ожидания изменения состояния;
  • Добавлена возможность жёсткого определения в файле config-top.h значений $PATH и $HISTSIZE. Данные значения будут более приоритетными, чем значения из переменных окружения и могут применяться для создания ограниченных окружений;
  • При автодополнении ввода теперь не учитывается регистр символов для имён функций и псевдонимов (alias), если в readline выставлен режим completion-ignore-case;
  • Во встроенной команде "umask" разрешено использование режимов доступа и масок, превышающих восьмеричное значение 777;
  • Во встроенной команде "times" в зависимости от настройки локали теперь может выводиться не только точка, но и запятая в качестве разделителя дробных значений;
  • Добавлена отключенная по умолчанию и недокументированная опция "syslog_history" для включения отправки в syslog истории ввода команд;
  • Встроенная реализация malloc переведена на использование mmap для обеспечения запроса блоков, размером больше 128 Кб, и возможности возврата страниц памяти ядру после выполнения mfree;
  • В качестве индексов ассоциативных массивов теперь могут использоваться строки, состоящие только из символов пробела;
  • В разряд видимых переведены ранее недокументированные опции localvar_unset и progcomp_alias;
  • Переменная "$_" теперь не меняет своё значение, когда shell запускает команду, выполняющую fork.


  1. Главная ссылка к новости (http://lists.gnu.org/archive/h...)
  2. OpenNews: Релиз командного интерпретатора Bash 4.4
  3. OpenNews: В Bash выявлено ещё четыре уязвимости, эксплуатируемые через переменные окружения
  4. OpenNews: Релиз командного интерпретатора Bash 4.3
  5. OpenNews: Релиз командной оболочки zsh 5.1
  6. OpenNews: Выпуск командной оболочки fish 3.0
Лицензия: CC-BY
Тип: Программы
Ключевые слова: bash, shell
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.1, Аноним (1), 11:27, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    > Во встроенной команде "umask" разрешено использование режимов доступа и масок, превышающих восьмеричное значение 777

    Просветите, пожалуйста, как umask может быть больше 777

     
     
  • 2.4, Аноним (4), 11:35, 08/01/2019 [^] [ответить]    [к модератору]
  • –2 +/
    Обнуляется
     
  • 2.7, Аноним (7), 11:42, 08/01/2019 [^] [ответить]    [к модератору]
  • +8 +/
    01777
     
  • 2.19, Бананим (?), 12:46, 08/01/2019 [^] [ответить]    [к модератору]
  • +1 +/
    Видать, добавили поддержку Sticky bit, Set UID, Set GID, получилось 7777.
     
     
  • 3.45, Нанобот (ok), 15:18, 08/01/2019 [^] [ответить]    [к модератору]
  • +1 +/
    как минимум, в линуксе это работать не будет
    в реализации системного вызова явно сбрасываются все биты старше 0777: https://github.com/torvalds/linux/blob/master/kernel/sys.c#L1816
     
     
  • 4.99, fi (ok), 11:32, 09/01/2019 [^] [ответить]    [к модератору]  
  • +/
    Скорей всего будет - пример не о том
     
  • 4.126, pavlinux (ok), 13:05, 10/01/2019 [^] [ответить]     [к модератору]  
  • +/
    builtins common c - read_octal allow octal numbers greater than 777 to accommod... весь текст скрыт [показать]
     
     
  • 5.127, Аноним (127), 20:53, 10/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Как верно подметил Нанобот, сисколл установки umask учитывает только 0777, так что от увеличения дополнительных бит в баше ничего не изменится.
     
     
  • 6.128, Нанобот (ok), 10:31, 12/01/2019 [^] [ответить]     [к модератору]  
  • +/
    я подозреваю, что существует какая-то, отличная от линукс, система, в которой су... весь текст скрыт [показать]
     
  • 6.131, pavlinux (ok), 16:31, 14/01/2019 [^] [ответить]    [к модератору]  
  • +/
    > Как верно подметил Нанобот, сисколл установки umask

    umask в баше встроенный.

    [code]
    int umask_builtin (list)   WORD_LIST *list; {...;}
    [/code]


     
  • 1.2, Аноним (2), 11:28, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +19 +/
    Астрологи объявили год поломанных скриптов.
     
     
  • 2.15, xm (ok), 12:06, 08/01/2019 [^] [ответить]    [к модератору]  
  • +18 +/
    > Астрологи объявили год поломанных скриптов.

    Говорила ж мама: "Пиши скрипты только на sh"...

     
     
  • 3.68, Michael Shigorin (ok), 19:11, 08/01/2019 [^] [ответить]     [к модератору]  
  • –5 +/
    Это не помогает с дебиановским dash, вообще говоря PS и да, жду свидетелей дву... весь текст скрыт [показать]
     
     
  • 4.86, xm (ok), 23:00, 08/01/2019 [^] [ответить]    [к модератору]  
  • –2 +/
    ССЗБ
     
  • 4.103, cat666 (ok), 13:08, 09/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Миша, а как же Альт? Что-то ты всё про Debian, да про Debian.
     
     
  • 5.114, Michael Shigorin (ok), 16:01, 09/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    > Миша, а как же Альт?

    https://bugzilla.altlinux.org/31399 CLOSED FIXED

     
  • 4.106, freehck (ok), 14:54, 09/01/2019 [^] [ответить]     [к модератору]  
  • +1 +/
    У Debian-а мейнтейнеров завались, там это как раз не проблема Я так понимаю, че... весь текст скрыт [показать]
     
  • 4.119, Аноним (119), 20:13, 09/01/2019 [^] [ответить]    [к модератору]  
  • +/
    > Это не помогает с дебиановским dash, вообще говоря.

    В смысле не помогает? Он же вроде POSIX совместимый: dash is a POSIX-compliant implementation of /bin/sh that aims to be as small as possible.

     
     
  • 5.120, Michael Shigorin (ok), 20:17, 09/01/2019 [^] [ответить]     [к модератору]  
  • –1 +/
    Сдаётся мне, полностью честно было бы s is aims to be вот здесь Глючный он м... весь текст скрыт [показать]
     
  • 3.91, Andrey Mitrofanov (?), 06:27, 09/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    >> Астрологи объявили год поломанных скриптов.
    > Говорила ж мама: "Пиши скрипты только на sh"...

    На котором из?  Впрочем geesh/gash порешают, да.

     
     
  • 4.97, Имя (?), 10:56, 09/01/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    http://pubs.opengroup.org/onlinepubs/9699919799/idx/xcu.html
     
  • 4.98, Гентушник (ok), 11:06, 09/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    На том который описан в IEEE Std 1003.1, зачем завязываться на конкретный интерпретатор?
     
     
  • 5.104, Andrey Mitrofanov (?), 14:10, 09/01/2019 [^] [ответить]     [к модератору]  
  • +2 +/
    Говорила ж мама только на sh Я ж про _реализацию_ спрашивал Кот... весь текст скрыт [показать]
     
     
  • 6.105, Andrey Mitrofanov (?), 14:22, 09/01/2019 [^] [ответить]     [к модератору]  
  • +1 +/
    Кстати, сразу, при выборе варианта - , то исть писать _под все_ возможные реализ... весь текст скрыт [показать]
     
  • 6.123, Гентушник (ok), 21:11, 09/01/2019 [^] [ответить]     [к модератору]  
  • +2 +/
    Например bash --posix, да, или вызов баша через команду sh, большинство других ш... весь текст скрыт [показать]
     
     
  • 7.129, Andrey Mitrofanov (?), 08:44, 13/01/2019 [^] [ответить]    [к модератору]  
  • +/
    >> чтоб не больше
    > А почему не больше? Больше можно, стандарт не запрещает реализациям делать расширения
    > синтаксиса.

    Я не знаю, почему вам двоим мамы (или мама? не братья?) запрещают в башизмы.  И вы остальным по ушам с этим фетишем ездите.  Стандпрт же ж вишь ты "не запрещает в расширения", ага.

     
  • 3.93, Dzivak (?), 09:17, 09/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    ksh очень хорош по совместимости
     
     
  • 4.100, fi (ok), 11:34, 09/01/2019 [^] [ответить]    [к модератору]  
  • +3 +/
    Уйди! ты просто с ними не возился!

    их вообще два, и обычно в системе стоит старый.

     
  • 2.32, Аноним (32), 13:37, 08/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Что, скрипты настолько сложны, что трудно подправить?
     
     
  • 3.69, Michael Shigorin (ok), 19:11, 08/01/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    Бывают не столь сложны скрипты, сколь инварианты, особенно неявные.
     
  • 2.37, Аноним (37), 14:08, 08/01/2019 [^] [ответить]    [к модератору]  
  • +7 +/
    Я о большей части перечисленного даже не слышал. Думается, большинство этих изменений даже не заметит.
     
     
  • 3.80, вандамм (?), 20:28, 08/01/2019 [^] [ответить]    [к модератору]  
  • –5 +/
    хвастаться собственной некомпетентностью - какой интересный вариант каминг аута.
     
     ....нить скрыта, показать (21)

  • 1.3, Qwerty (??), 11:30, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    >Встроенная реализация malloc переведена на использование mmap для обеспечения запроса блоков

    О, а вот и пачка потенциальных уязвимостей и переполнений подъехала.

     
     
  • 2.9, Аноним (7), 11:44, 08/01/2019 [^] [ответить]    [к модератору]  
  • +7 +/
    А теперь расскажи, чем в плане переполнений аллокация через mmap хуже malloc/new (который сам обёртка над mmap/brk в большинстве libc).
     
     
  • 3.27, имя (?), 13:16, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    А в каких аллокаторах, кроме, возможно, виндовых, malloc работает через что-то отличное от mmap/(s)brk?
     
     
  • 4.40, Аноним (40), 14:30, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    В Винде всё точно так же, только вызов называется VirtualAlloc. Даже если задать огромную пустую секцию исполняемого файла и аллоцировать кучу там, внизу окажется отображение страниц.
     
  • 2.11, Аноним (11), 11:48, 08/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Это ровно то, что делается в других реализациях malloc.
     
     
  • 3.115, Аноним (127), 16:11, 09/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    А зачем башу своя реализация malloc?
     
     
  • 4.121, Аноним (119), 20:24, 09/01/2019 [^] [ответить]    [к модератору]  
  • +/
    Для оптимизации, упрощения отладки и улучшения их переносимости между различными системами.
     
  • 2.61, Сергей (??), 16:55, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    Пихать внешние невалидированные данные в неизолированный баш это само по себе потенциальная уязвимость.
     
  • 1.5, Аноним (5), 11:37, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    Без https по умолчанию раздавать файлы в наше время - жуткий моветон.

    // b.

     
     
  • 2.30, Аноним (30), 13:32, 08/01/2019 [^] [ответить]    [к модератору]  
  • –2 +/
    а еще говорят что шапка из фольги помогает при паранойи. попробуйте.
     
     
  • 3.48, Нанобот (ok), 15:23, 08/01/2019 [^] [ответить]    [к модератору]  
  • +4 +/
    > а еще говорят что шапка из фольги помогает при паранойи. попробуйте.

    слышал, в последных прошивках излучателей используются особые радиоволны, которые пробивают шапочки из фольги

     
     
  • 4.60, Аноним (60), 16:42, 08/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    > в последных прошивках излучателей используются особые радиоволны

    Так они и https пробивают на ура. Тут нужны другие подходы.

     
  • 3.72, Росатый (?), 19:28, 08/01/2019 [^] [ответить]    [к модератору]  
  • +6 +/
    Нихрена она не помогает. Наоборот, излучение отражается от поверхности планеты и концентрируется под шапочкой.
     
  • 2.58, Аноним (58), 16:38, 08/01/2019 [^] [ответить]    [к модератору]  
  • +4 +/
    Проверять подпись загруженного файла уже можно лет 20 как.
     
     
  • 3.63, Zulu (?), 17:09, 08/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    А md5 скачан с того же места без https. Угу.
     
     
  • 4.64, Аноним (60), 17:32, 08/01/2019 [^] [ответить]    [к модератору]  
  • +4 +/
    Какая разница, откуда скачан md5, если проверять надо подпись?
     
     
  • 5.94, Аноним (94), 09:32, 09/01/2019 [^] [ответить]    [к модератору]  
  • –2 +/
    А .sig-файл с подписью и открытый ключ для её проверки тоже скачаны по нешифрованному каналу, в том числе "с того же места без https". Угу.
     
     
  • 6.117, Аноним (117), 18:27, 09/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Ездить надо к автору лично ;)
     
  • 6.118, Michael Shigorin (ok), 18:33, 09/01/2019 [^] [ответить]     [к модератору]  
  • +/
    И зачем было городить инфраструктуру со всякими keys gnupg net, спрашивается ... весь текст скрыт [показать]
     
     
  • 7.130, Andrey Mitrofanov (?), 08:47, 13/01/2019 [^] [ответить]    [к модератору]  
  • +/
    >> А .sig-файл с подписью и открытый ключ для её проверки тоже скачаны
    >> по нешифрованному каналу, в том числе "с того же места без https". Угу.
    > И зачем было городить инфраструктуру со всякими keys.gnupg.net, спрашивается...

    Чтоб как с dns-ом было: быстро, удобно и не напрягая мозг. https://www.opennet.ru/opennews/art.shtml?num=49937

     
  • 6.122, Аноним (119), 20:30, 09/01/2019 [^] [ответить]     [к модератору]  
  • +/
    Это так же не имеет значения так как подпись проверяется ключом А этого вы не з... весь текст скрыт [показать]
     
  • 2.70, Michael Shigorin (ok), 19:13, 08/01/2019 [^] [ответить]    [к модератору]  
  • –4 +/
    Расскажите это "зелёным", они Вам расскажут, что моветон -- делать свой вклад в глобальное потепление.  Ну а мы тут полюбуемся на два лагеря опирающихся всё больше на эмоции вместо рассуждения.
     
  • 1.6, Какаянахренразница (ok), 11:41, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Ядро линукс 5.0, баш 5.0... Что к чему приурочили?
     
     
  • 2.13, Аноним (-), 11:57, 08/01/2019 [^] [ответить]    [к модератору]  
  • +8 +/
    К скорому выходу Librem 5.
     
     
  • 3.17, Аноним (40), 12:15, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    > К скорому выходу Librem 5.

    С 5 понятно. А 0 к чему?

     
     
  • 4.28, Аноним (28), 13:29, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    символ бесконечного уроборуса. типа всё это фарэвэр
     
     
  • 5.39, Аноним (40), 14:22, 08/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Тепрь я спокоен. А то боялся, что выпустят 0 телефонов.
     
  • 1.10, Аноним (10), 11:46, 08/01/2019 [ответить] [показать ветку] [···]     [к модератору]  
  • –4 +/
    модули до сих пор не завезли нет нормального способа заинклудить другой файл s... весь текст скрыт [показать]
     
     
  • 2.26, Аноним (26), 13:13, 08/01/2019 [^] [ответить]    [к модератору]  
  • –8 +/
    > bash
    > язык

    Вы это серьёзно? Зачем что-то сложное писать на убогих скриптовых языках?

     
     
  • 3.36, Дартаньян (?), 14:00, 08/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Напиши на "неубогом" языке скрипт восстановления реплики бд мускуля.
     
     
  • 4.53, А (??), 16:02, 08/01/2019 [^] [ответить]    [к модератору]  
  • –4 +/
    Все так плохо, что это уже надо скриптовать? Поменяйте базу уже.
     
  • 3.56, Бананим (ok), 16:27, 08/01/2019 [^] [ответить]    [к модератору]  
  • +3 +/
    Например, чтобы не встраивать интерпретатор какого-нибудь питона или руби докер-образ. А еще, чтобы все это потом могли поддерживать, т. к. баш мало-мальски знает любой юникс-админ.
     
  • 2.46, Аноним (60), 15:20, 08/01/2019 [^] [ответить]     [к модератору]  
  • +3 +/
    Возможно, проблема в том, что относится к самому local который выполнился ус... весь текст скрыт [показать]
     
  • 2.59, Аноним (58), 16:42, 08/01/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    > если результат сабшелла записывается в локальную переменную

    всё верно, потому что это результат команды local, раздели объявление локальных переменных и присвоение в них.

     
  • 2.62, zomg (?), 16:55, 08/01/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    Причина в том, что local -- это команда, а не часть синтаксиса. И ее код возврата всегда 0.
    Нелогично, но это так. Я сам был очень удивлен, когда первый раз напоролся на эту особенность.
     
  • 2.71, Michael Shigorin (ok), 19:17, 08/01/2019 [^] [ответить]     [к модератору]  
  • –3 +/
    Нет CODE which shell-error which no shell-error in home mike bin usr loc... весь текст скрыт [показать]
     
     
  • 3.81, Аноним (10), 21:06, 08/01/2019 [^] [ответить]     [к модератору]  
  • +/
    Да CODE tree include-me sh subdir include-me sh m... весь текст скрыт [показать]
     
     
  • 4.107, freehck (ok), 15:11, 09/01/2019 [^] [ответить]     [к модератору]  
  • +1 +/
    Ты можешь разложить пакеты так, как тебе это заблагорассудится, а затем натравит... весь текст скрыт [показать]
     
  • 4.112, Michael Shigorin (ok), 15:41, 09/01/2019 [^] [ответить]     [к модератору]  
  • +/
    Нет В приведённом мной примере и впрямь стоило сразу показать, что стою не в ... весь текст скрыт [показать]
     
  • 2.124, Аноним (124), 22:01, 09/01/2019 [^] [ответить]     [к модератору]  
  • +/
    Почитайте уже http mywiki wooledge org BashPitfalls local_varname 3D 24 28comm... весь текст скрыт [показать]
     
     ....нить скрыта, показать (12)

  • 1.16, Аноним (7), 12:08, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А pre- и post-exec так и приходится пилить либо патчами, либо очень неочевидно приседая.
     
     
  • 2.21, Аноим (?), 12:55, 08/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    systemd твой друг
     
     
  • 3.67, Анонн (?), 19:03, 08/01/2019 [^] [ответить]    [к модератору]  
  • +6 +/
    > systemd твой друг

    С такими друзьями и враги не нужны.

     
  • 3.111, Аноним (7), 15:30, 09/01/2019 [^] [ответить]     [к модератору]  
  • +/
    Да ты упрт Причём тут системда, если мне нужна конструкция, которая позволяет в... весь текст скрыт [показать]
     
     
  • 4.113, Michael Shigorin (ok), 15:45, 09/01/2019 [^] [ответить]     [к модератору]  
  • +/
    Нууу из перекликающихся задачек вспомнился LiLaLo -- вдруг подойдут тамошние ... весь текст скрыт [показать]
     
  • 1.18, Alukardd (ok), 12:31, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Лучше бы двумерные массивы запилили уже, в конце-то концов.
     
     
  • 2.31, Аноним (31), 13:33, 08/01/2019 [^] [ответить]    [к модератору]  
  • –3 +/
    Массивы размерностью больше 1 - зло.
     
     
  • 3.34, Какаянахренразница (ok), 13:44, 08/01/2019 [^] [ответить]    [к модератору]  
  • +4 +/
    > Массивы размерностью больше 1 - зло.

    Ы??? Очень неожиданное мнение. Можно получить и его обоснование?

     
     
  • 4.42, йкЛще (?), 14:47, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    Запросто. Массивы с размерностью >1 не существуют.
     
     
  • 5.44, Alukardd (ok), 15:09, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    Скажу по другому: я хочу сложные структуры данных. Так яснее?
     
     
  • 6.47, Аноним (60), 15:22, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    > хочу сложные структуры данных

    Есть в питоне и перле, пользуйтесь.

     
  • 6.50, Имя (?), 15:26, 08/01/2019 [^] [ответить]    [к модератору]  
  • +4 +/
    Возьми нормальный язык и не ремонтируй двигатель изолентой.
     
  • 6.95, Andrey Mitrofanov (?), 09:52, 09/01/2019 [^] [ответить]     [к модератору]  
  • +2 +/
    В 4 0 сделали local -n Передачу по имени можно пилить уже Минус - в старых де... весь текст скрыт [показать]
     
  • 6.108, freehck (ok), 15:17, 09/01/2019 [^] [ответить]     [к модератору]  
  • +2 +/
    Если нужны сложные структуры данных, то скорее всего Вы ошиблись с выбором инстр... весь текст скрыт [показать]
     
  • 1.20, Бананим (?), 12:51, 08/01/2019 [ответить] [показать ветку] [···]     [к модератору]  
  • –4 +/
    Интересно, в баше, когда-нибудь появится возможность возвращать из функции не то... весь текст скрыт [показать]
     
     
  • 2.22, Аноим (?), 12:58, 08/01/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    func () {
    if что-то ; then
      echo "0"
    else
      echo "65535"
    fi
    }

    Пользуйся)

     
     
  • 3.25, Аноним (40), 13:12, 08/01/2019 [^] [ответить]    [к модератору]  
  • –2 +/
    Видел точно такое же на С++
     
  • 3.57, Бананим (ok), 16:28, 08/01/2019 [^] [ответить]    [к модератору]  
  • –3 +/
    Пользуюсь, но все же это костыль. Некрасиво.
     
  • 2.33, Annoynymous (ok), 13:37, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    Из функции можно возвращать строку.

    Если речь про код выхода по команде exit, то там вообще 4 байта.

     
     
  • 3.38, Аноним (37), 14:11, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    Из этих 4-х только один - код выхода процесса. И ограничение это не в bash, так что ответ на оригинальный вопрос - не будет этого никогда.
     
  • 2.75, Michael Shigorin (ok), 19:36, 08/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    > 256

    off-by-one

     
  • 2.96, Andrey Mitrofanov (?), 10:02, 09/01/2019 [^] [ответить]     [к модератору]  
  • +/
    С-слабак 1 _get 1- OBJ , 2- fld, 3- out rc 124 out local... весь текст скрыт [показать]
     
  • 2.109, freehck (ok), 15:21, 09/01/2019 [^] [ответить]     [к модератору]  
  • +1 +/
    Во-первых 255, во-вторых нет, не появится, потому как kernel libc в вызове _exit... весь текст скрыт [показать]
     
  • 1.23, Anon4ik_ (?), 13:06, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –6 +/
    Использую zsh, а для сборки пакетов держу dash.
     
     
  • 2.24, Злыдень (??), 13:11, 08/01/2019 [^] [ответить]    [к модератору]  
  • +15 +/
    Держите нас в курсе. Это так интересно.
     
     
  • 3.49, Аноним (60), 15:24, 08/01/2019 [^] [ответить]    [к модератору]  
  • –8 +/
    А мне интересно. Не всем же выбирать софт по официальным мануалам редхета.

    Плюсанул ему.

     
     
  • 4.52, Аноим (?), 16:00, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    А, ну да. Навыбирают себе "софта" а потом на лезут на борды с такими головоломными вопросами, что сам Друзь офигеет
     
     
  • 5.55, А (??), 16:04, 08/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Александр, перелогинтесь.
     
  • 5.65, Аноним (60), 17:36, 08/01/2019 [^] [ответить]    [к модератору]  
  • +3 +/
    > Навыбирают себе "софта" а потом на лезут на борды с такими головоломными вопросами

    Слушал бы таких, как вы, сидел бы сейчас на десяточке.

     
     
  • 6.110, freehck (ok), 15:23, 09/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    >> Навыбирают себе "софта" а потом на лезут на борды с такими головоломными вопросами
    > Слушал бы таких, как вы, сидел бы сейчас на десяточке.

    Только если "десяточка" -- это Debian Buster! :)

     
  • 1.29, Аноним (29), 13:31, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Тот редкий случай, когда на ЛОРе новость более полная.

    // b.

     
     
  • 2.41, Аноним (41), 14:39, 08/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    В переводе на LOR местами текст очень напоминает машинный перевод. В переводе на opennet выкинута куча малоинтересных мелочей, которые только распыляют внимание и мало кому интересны.
     
  • 1.43, Аноним (43), 14:57, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    BASHism improved...
     
  • 1.51, Techno1 (?), 15:28, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Сделали бы еще вывод истории команд с хронологией по дате....
     
     
  • 2.54, Аноим (?), 16:03, 08/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Оно уже есть как бы. Переменную HISTTIMEFORMAT погуглите
     
  • 1.66, user90 (?), 18:49, 08/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Я пробовал написать на bash что-то типа менеджера паролей. Это возможно. Но как-то очень неприятно)) Ну я просто юзер, но в конце концов переписал на elisp. Но тоже не особо хорошо. Думаю в итоге переписать на Perl, это уже будет хоть что-то.Конечно можно бездумно юзать и встроенный в FF, до поры до времени))
     
     
  • 2.74, Anon4ik_ (?), 19:33, 08/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Сейчас пихонеры тебя исправят.
     
  • 2.77, Michael Shigorin (ok), 19:39, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    > Я пробовал написать на bash что-то типа менеджера паролей.

    А чем именно не устроил каждый из существующей горы вроде pwsafe? (первый попавшийся под руку, не воспринимайте как рекомендацию!)

     
     
  • 3.78, user90 (?), 20:00, 08/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Я о нем не слышал)) Ок, учту.
     
  • 3.79, user90 (?), 20:17, 08/01/2019 [^] [ответить]     [к модератору]  
  • –1 +/
    Да и непонятно о каком pwsafe речь Там есть автоматический выбор аккаунта для т... весь текст скрыт [показать]
     
     
  • 4.89, ACCA (ok), 02:17, 09/01/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Это есть в KeePassX.

    С global shortcut не очень ровно в Wayland, но в остальном - вполне рабочая штука.

     
  • 2.82, OpenEcho (?), 21:15, 08/01/2019 [^] [ответить]    [к модератору]  
  • +/
    http://kpcli.sourceforge.net/
    ?
     
     
  • 3.84, user90 (?), 21:31, 08/01/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Да хоть fpm2. Был, но так же слишком просто ;)
     
     
  • 4.116, OpenEcho (?), 16:16, 09/01/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    kpcli совместим с KeePass в отличие от fpm2 и прочих, а это значит что синхронизация файла мэнеджера паролей будет работать практически на всех платформах, - андроид, яблоко, венда, все юникс подобные ОСи и даже на старой нокии из под джавы.
     
  • 2.125, user455 (?), 10:42, 10/01/2019 [^] [ответить]    [к модератору]  
  • +/
    менеджер паролей на bash - pass . очень хороший менеджер паролей.
     
  • 1.101, fi (ok), 11:35, 09/01/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Что только не придумают чтоб не использовать прекрасный perl!
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2019 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor