The OpenNET Project / Index page

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

форумы  правила/FAQ  поиск  регистрация  вход/выход  слежка  RSS
"Релиз командного интерпретатора Bash 4.4"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от opennews (??) on 17-Сен-16, 00:14 
После двух с половиной лет разработки вышла (http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00018....) новая версия командного интерпретатора GNU Bash 4.4 (http://www.gnu.org/software/bash/), используемого по умолчанию в большинстве  дистрибутивов Linux. Одновременно состоялся (http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00019....) релиз библиотеки readline 7.0, применяемой в bash для организации редактирования  командной строки.


Из улучшений (http://git.savannah.gnu.org/cgit/bash.git/tree/NEWS?h=bash-4.4) можно отметить:


-  Во встроенной команде mapfile появилась возможность определения произвольного символа-разделителя записей (опция "-d");
-  Для почти всех команд реализована опция "--help" для вывода подсказки;
-  Добавлен шаблон ${parameter@spec} для применения преобразования к значению "parameter";
-  Во встроенной команде local появилась возможность указания аргумента "-" для сохранения состояния  однобуквенных shell-опций  и восстановления прошлых значений при выходе из функции;
-  Добавлена новая переменная EXECIGNORE, позволяющая определить имена, которые следует игнорировать при поиске команд;
-  Подготовлен начальный SDK для создания собственных  команд (загружаемых через "enable -f"), включающий набор заголовочных файлов  и фрагментов сценариев Makefile;
-  Bash теперь сохраняет статус выхода только для асинхронных заданий, что нарушает совместимость с прошлыми версиями в которых сохранялись статусы для всех заданий. Таким образом теперь нельзя использовать команду wait для получения статуса предыдущей синхронной команды;

-  В команду ulimit добавлены опции "-k" (kqueues) и -P (pseudoterminals).

URL: http://lists.gnu.org/archive/html/bug-bash/2016-09/msg00018....
Новость: https://www.opennet.ru/opennews/art.shtml?num=45163

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Релиз командного интерпретатора Bash 4.4"  +2 +/
Сообщение от Аноним (??) on 17-Сен-16, 00:14 
> Bash теперь сохраняет статус выхода только для асинхронных заданий, что нарушает совместимость с прошлыми версиями в которых сохранялись статусы для всех заданий. Таким образом теперь нельзя использовать команду wait для получения статуса предыдущей синхронной команды;
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Релиз командного интерпретатора Bash 4.4"  +5 +/
Сообщение от Аноним (??) on 17-Сен-16, 00:14 
интересно, нафига они это сделали?
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Релиз командного интерпретатора Bash 4.4"  +8 +/
Сообщение от Аноним (??) on 17-Сен-16, 00:15 
Фашизм, очевидно же.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

9. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от vantoo (ok) on 17-Сен-16, 03:15 
Происки Госдепа, не иначе!
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

21. "Релиз командного интерпретатора Bash 4.4"  +5 +/
Сообщение от РОСКОМУЗОР on 17-Сен-16, 11:17 
Данное изменение предложено лично Бараком Обамой. Юзайте православную версию, там всё по старому.
Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

24. "Релиз командного интерпретатора Bash 4.4"  +7 +/
Сообщение от freehck email(ok) on 17-Сен-16, 12:58 
Хм. wait для получения статуса *синхронной* команды? А кто его вообще для этого юзал? Как он умудрился это сделать, и главное -- зачем это понадобилось?

Я вот думал, что wait только для асинхронных команд можно использовать. Или отдельные умельцы шлют SIGCONT остановленному процессу синхронной команды, и натравливают на него wait?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

40. "Релиз командного интерпретатора Bash 4.4"  +2 +/
Сообщение от EHLO on 18-Сен-16, 14:09 
> Я вот думал, что wait только для асинхронных команд можно использовать. Или
> отдельные умельцы шлют SIGCONT остановленному процессу синхронной команды, и натравливают
> на него wait?

Остановленный процесс это уже асинхронная команда.

Я с интересом для себя обнаружил, что:

$bash -c 'echo $$;exit 33'
2737
$bash -c 'echo $$;exit 44'
2738
$wait 2738 ; echo $?
44
$wait 2737 ; echo $?
33
$wait 2738 ; echo $?
44

Отключили вероятно для оптимизации. Помнить все PIDы может оказаться накладно в гипотетической ситуации.

Ответить | Правка | ^ к родителю #24 | Наверх | Cообщить модератору

45. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от freehck email(ok) on 18-Сен-16, 23:38 
Спасибо, очень интересная штука. Хм. Была.

Ответить | Правка | ^ к родителю #40 | Наверх | Cообщить модератору

4. "Релиз командного интерпретатора Bash 4.4"  –1 +/
Сообщение от анон on 17-Сен-16, 00:59 
zsh лучше
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Релиз командного интерпретатора Bash 4.4"  –10 +/
Сообщение от Виталик (??) on 17-Сен-16, 02:18 
Только на маке, на линуксе он какой-то глючный.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от leap42 (ok) on 17-Сен-16, 02:33 
vi-mode или emacs? с последним уже много лет проблем не замечал. может, дистро-специфичные проблемы? баг уже отрепортили?
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Аноним (??) on 17-Сен-16, 02:38 
Думаю автор имел в виду Debian based багу.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Релиз командного интерпретатора Bash 4.4"  +8 +/
Сообщение от Вы забыли заполнить поле Name on 17-Сен-16, 03:07 
Думаю, автор яблодрочер.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

12. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 17-Сен-16, 06:45 
Автор имел ввиду не пойми что. Debian Jessie, ZSH 5.0.7, проблем не наблюдаю.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

18. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Виталик (??) on 17-Сен-16, 09:57 
Короче рассказываю. Как была шумиха вокруг shellshock я решил что баш не безопасен и пора сваливать на zsh (я тогда только недавно перешел на GNU+Linux). Так как настраивать с нуля желания не было скачал с гитхаба oh-my-zsh, так что возможно вина в глючности лежит не на самом zsh, а на этом конфиге)
Вот список глюков встреченных за 2 дня использования:
- при длинном названии working directory шрифт коцался и становился нечитаемым
- если нажать энтер 2 раза быстро после ответа на какой-то readline вопрос все коцалось и писалось не на тех рядках, где должно
- иногда он просто не работал, окошко терминала просто становилось пустым и надо было открывать новую вкладку
При том всем на макбуке мамки oh-my-zsh работает отлично без подобных проблем.
В общем я потом попробовал fish и остался им доволен аки слон, там все стабильно, быстро и удобно. С тех пор пользуюсь им чего и вам советую.
P.S. на сайте zsh оглавление мануала размечено с помощью тегов definition list, уже одно это говорит что у авторов не в порядке с головой и чего стоит ожидать от их продукта.
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

20. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 17-Сен-16, 11:06 
oh-my-zsh
использовать крайне не рекомендуется, по причие тормазнутости.
посмотрите сколько времени идет запуск.
for i in $(seq 1 10); do /usr/bin/time zsh -i -c exit; done
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

22. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 17-Сен-16, 11:54 
oh-my-zsh -- та ещё помойка с понадёрганными со всего интернета рецептами для плагинов. Для начала лучше  использовать grml.
Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

23. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от freehck email(ok) on 17-Сен-16, 12:40 
oh-my-zsh -- помойка, у которой дефолты начисто подвешивают консоль (Зато красиво! Им, понимешь ли, красиво хотелось, а то, что по секунде ждать следующего приглашения консоли - это им плевать).

Мне лично хватает git://github.com/zsh-users/zsh-syntax-highlighting.git
Плюс разумеется bash-completion и своего немного там понавешал.

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

27. "Релиз командного интерпретатора Bash 4.4"  +2 +/
Сообщение от Аноним84701 on 17-Сен-16, 16:29 


> P.S. на сайте zsh оглавление мануала размечено с помощью тегов definition list,
> уже одно это говорит что у авторов не в порядке с головой и чего стоит ожидать от их продукта.

Нет, это говорит о том, что уважаемому  диванному аналитику опеннета стоило посмотреть хотя бы на cлона^W мета-данные, прежде чем делать так далеко идущие выводы:

> <!-- Created by GNU Texinfo 6.0, http://www.gnu.org/software/texinfo/ -->
> <meta name="Generator" content="texi2any">

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

10. "Релиз командного интерпретатора Bash 4.4"  –2 +/
Сообщение от vantoo (ok) on 17-Сен-16, 03:17 
Вы хотели сказать KSH.
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

28. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от asavah (ok) on 17-Сен-16, 17:21 
CSH же!
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

11. "Релиз командного интерпретатора Bash 4.4"  –1 +/
Сообщение от intelfx (ok) on 17-Сен-16, 05:11 
`mapfile -d` -- вау, годно!

Ещё бы запилили применение нескольких модификаторов подстановки за один раз (как в zsh, через двоеточие) -- цены бы не было.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Релиз командного интерпретатора Bash 4.4"  –1 +/
Сообщение от Наркоман on 17-Сен-16, 08:12 
Есть вообще шелл с человеческим синтаксисом?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

14. "Релиз командного интерпретатора Bash 4.4"  +3 +/
Сообщение от DeerFriend on 17-Сен-16, 08:27 
Пёрл?
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

15. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Blind Vic (ok) on 17-Сен-16, 09:24 
xonsh?
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

19. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 17-Сен-16, 10:44 
Есть, оберон называется.
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

25. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Стог сена on 17-Сен-16, 13:34 
в армии есть, но там терминалов нет.
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

43. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 18-Сен-16, 20:24 
> в армии есть, но там терминалов нет.

Если бы там побывал, то знал бы, что терминалы там есть. Ах с советских времён.


Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

29. "Релиз командного интерпретатора Bash 4.4"  –5 +/
Сообщение от Аноним (??) on 17-Сен-16, 19:07 
PowerShell, ха-ха
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

32. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Аноним (??) on 18-Сен-16, 00:38 
fish
Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

35. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Аноним (??) on 18-Сен-16, 01:58 
Бери баш и ebash. Очевидно же. Не нравится - пиши свой. Как сделаешь человеческим, не удивляйся реакции человеков.

А если серьезно, ты скорее всего не прочел полную справку на баш, он вполне, поэтому и стал стандартом.

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

39. "Релиз командного интерпретатора Bash 4.4"  –3 +/
Сообщение от Аноним (??) on 18-Сен-16, 12:12 
> стал стандартом

шта?

Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

17. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Андрей Заикин (ok) on 17-Сен-16, 09:49 
Ждем теперь появления OpenBASH, NetBASH и FreeBASH
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

26. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Аноним (??) on 17-Сен-16, 13:42 
LibreBASH же.
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

30. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от iCat (ok) on 17-Сен-16, 19:19 
MS BASH
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

31. "Релиз командного интерпретатора Bash 4.4"  –3 +/
Сообщение от Онаним on 17-Сен-16, 23:45 
Кстати а может кто объяснить зачем люди ломают мозги и пишут bash-скрипты когда есть Python и много других более интуитивных и более мощных языков? Просто любопытно.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

33. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 18-Сен-16, 01:21 
А что тут объяснять? Это очевидно любому специалисту. Где-то удобнее bash, где-то python.
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

34. "Релиз командного интерпретатора Bash 4.4"  +2 +/
Сообщение от Led (ok) on 18-Сен-16, 01:52 
> когда есть Python и много других более интуитивных и более мощных
> языков?

"понятный даже дебилу" != "интуитивный и мощный для не-дебила".

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

36. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Аноним (??) on 18-Сен-16, 02:06 
Любой вопрос возникает от незнания. В данном случае ты не знаешь, что непосредственно в  шеле можно выполнять последовательности команд, а после выполнения, их полезно куда-то сохранить. Так и появляются bash-скрипты. Когда в командной строке синтаксис python дойдёт до степени удобства bash, то можно будет обсудить поставленный вопрос, а пока сравнение из серии сравнения ежа с носорогом.
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

38. "Релиз командного интерпретатора Bash 4.4"  +6 +/
Сообщение от angra (ok) on 18-Сен-16, 11:02 
Причин несколько.
1. Самая распространенная заключается в незнании большинством админов ЯП общего назначения вроде питона, перла, рубина.
2. Некоторые скриптовые языки чаще всего отбрасываются из-за их отсутсвия по дефолту в любом линуксе, в отличии от перла и питона. Прощай рубин.
3. Скрипт зачастую вырастает из однострочника, а значит с питоном тоже прощаемся.
4. Некоторые задачи таки удобней сделать на шелле, так как в них больше половины работы приходится на внешние утилиты.
Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

41. "Релиз командного интерпретатора Bash 4.4"  –1 +/
Сообщение от Аноним (??) on 18-Сен-16, 18:07 
Полностью согласен. Почти всегда мои башескрипты начинаются с однострочника, но иногда, на втором часе правок и попыток я говорю себе "лучше бы сразу взял Питон". Но когда делать на последнем лень, часто спасает python -c и inline script.
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

57. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Масик on 21-Сен-16, 09:03 
Не знаю как у вас, а наши админы знают perl и python иногда не хуже разработчиков. Но пользуются часто и bash-скриптами.
Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

46. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 19-Сен-16, 06:58 
> Python

Зачем мне ЭТО в системе? А bash\sh везде есть.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

47. "Релиз командного интерпретатора Bash 4.4"  –1 +/
Сообщение от gnu hater on 19-Сен-16, 08:50 
python поставляется почти со всеми дистрами(по крайней мере популярными) так же как и perl.
Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

48. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Happy_demon email(??) on 19-Сен-16, 09:10 
не скажу за линуксы, но во фре, начиная с версии кажется 6что-то_там перла по умолчанию нет.
Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

50. "Релиз командного интерпретатора Bash 4.4"  –1 +/
Сообщение от gnu hater on 19-Сен-16, 11:02 
во freebsd и bash по умолчанию не поставляется на сколько мне известно.
Ответить | Правка | ^ к родителю #48 | Наверх | Cообщить модератору

52. "Релиз командного интерпретатора Bash 4.4"  –1 +/
Сообщение от _ (??) on 19-Сен-16, 18:28 
Всё правильно известно.

Ещё в до-мезозойскую эру отцы основатели сказали что то типа интерактивным шеллом можешь иметь что хочешь, но для скриптов пользуй #!/bin/sh Luke! And Power will be with you ...
(ну и ещё много какашек на csh как шелл для скриптов ... да кто это помнит уже :)
У меня например руки сами бактики набирают вместо $()  :)

Хотя по нынешним временам, когда зайдя по ssh в 99% увидишь линукс и баш ... стоит ли йУнным париЦЦо?!

Ответить | Правка | ^ к родителю #50 | Наверх | Cообщить модератору

53. "Релиз командного интерпретатора Bash 4.4"  +1 +/
Сообщение от Led (ok) on 19-Сен-16, 21:12 
> У меня например руки сами бактики набирают вместо $()  :)

$() - POSIX shell
Но ты и дальше "бактики" набивай...

Ответить | Правка | ^ к родителю #52 | Наверх | Cообщить модератору

49. "Релиз командного интерпретатора Bash 4.4"  +3 +/
Сообщение от Anonn on 19-Сен-16, 09:13 
Какой версии?
Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

55. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 20-Сен-16, 11:17 
И ввиду "некоторых несовместимостей" (не)работает по разному, с utf-8 тоже интересная история.
Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

51. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 19-Сен-16, 14:47 
> А bash везде есть.

Распространённое заблуждение.

Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

56. "Релиз командного интерпретатора Bash 4.4"  –2 +/
Сообщение от Аноним (??) on 21-Сен-16, 07:13 
> Распространённое заблуждение.

Конечно, ведь я написал ещё про sh. Только не говорите, что busybox не везде есть. Никогда не поверю.

Ответить | Правка | ^ к родителю #51 | Наверх | Cообщить модератору

58. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 21-Сен-16, 21:50 
sh есть везде. А sh == bash -- распространенное забдуждение. Я вас не правильно понял.
Ответить | Правка | ^ к родителю #56 | Наверх | Cообщить модератору

59. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от Аноним (??) on 23-Сен-16, 09:42 
Ключевая фраза: "Bash теперь сохраняет статус выхода только для асинхронных заданий, что нарушает совместимость с прошлыми версиями"...
Синдром Поттеринга -- страшная заразная болезнь нашего времени.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

60. "Релиз командного интерпретатора Bash 4.4"  +/
Сообщение от jidckii email on 20-Мрт-17, 16:27 
Я правильно понимаю, что вот такая конструкция у меня перестанет работать с версии 4.4  ??

<code>  if [[ -d "$dalet_path" ]];then
    cp $end_path$end_file_name.$CONTAINER $dalet_path$FORMAT_PATH >> $LOG_FILE 2>&1 & pid_cp=$!
  else
    log_info "\e[1;31m Ошибка при копировании в DALET, путь не найден \e[0m"
  fi
  
  if [[ -d "$frank_path$date_dir" ]];then
    cp -R $source_path* $frank_path$date_dir$v_hd >> $LOG_FILE  2>&1 & pid_cp1=$!
  else
    log_info "\e[1;31m Ошибка при копировании на FRANK, путь не найден \e[0m"
  fi
  
  if [[ -d "$frank_path$date_dir" ]];then
    cp $end_path$end_file_name.$CONTAINER $frank_path$date_dir$dlya_montaja >> $LOG_FILE 2>&1 & pid_cp2=$!
  else
    log_info "\e[1;31m Ошибка при копировании на FRANK, путь не найден \e[0m"
  fi
  
  wait $pid_cp2
  if [[ "$?" -ne 0 ]]; then
    log_info "\e[1;31m Ошибка во время копирования готового на FRANK \e[0m "
    return 1
  fi
  
  wait $pid_cp1
  if [[ "$?" -ne 0 ]]; then
    log_info "\e[1;31m Ошибка во время копирования исходников на FRANK \e[0m "
    return 1
  fi
  
  wait $pid_cp
  if [[ "$?" -ne 0 ]]; then
    log_info "\e[1;31m Ошибка во время копирования готового в DALET \e[0m"
    return 1
  fi
</code>

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

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