LINUX.ORG.RU

Вышел sed 4.6

 ,


2

2

Чуть меньше чем через 9 месяцев после релиза версии 4.5 вышел sed 4.6.

В новой версии:

  • теперь sed явно сообщает когда у комманд r/R/w/W (а также s///w) пропущен аргумент с именем файла;
  • теперь sed пишет в файлы не с построчным буфером, а с полноценным буфером (что должно значительно увеличить производительность «sed -i»); отключить буфер как и раньше можно опцией "-u";
  • пользователи «non-cygwin windows environments» (таких как, например, mingw) должны оценить то, что теперь там sed корректно обрабатывает '\n' в режиме -b/--binary;
  • устранёна ошибка с переполнением кучи, когда в команде 's' указывались некорректные обратные ссылки (ошибка присутствовала с версии 4.0.6 (2003-й год));
  • исправлена ошибка с переполнением кучи при выполнении команды «s/$//n»; также теперь sed не добавляет дополнительный NUL при выполнении этой команды (ошибки присутствовали с версий 4.3 и 4.0.7 соответственно (2017-й и 2003-й годы));
  • добавлена новая опция "--debug", которая выводит скрипт в канонической форме и отмечает его выполнение.

>>> Скачать

★★★★★

Проверено: Shaman007 ()

режиме -b/--binary;

в голову не приходило использовать sed на двоичных файлах.

устранён баг с переполнением кучи... исправлен баг с переполнением кучи

решето

выводит скрипт в канонической форме и отмечает его выполнение

православно, одобряю.

AVL2 ★★★★★ ()
Ответ на: комментарий от AVL2

в голову не приходило использовать sed на двоичных файлах.

Часто использую. Очень удобно на самом деле. Для замены текстовых строк в оных, естественно. Например что-то типа пути к сейв-файлам, если он упоротый, в игре (проприетарной, исходников нет, только бинари).

По теме: наконец-то что-то действительно нужное.

anonymous ()
Ответ на: комментарий от AVL2

в голову не приходило использовать sed на двоичных файлах

так ты вроде виндузятник - как там вообще можно жить без правки бинарных файлов ?

anonymous ()
Ответ на: комментарий от rust_afari

В винде нет нормального ПО для работы с регулярами? Предвижу ответ, но мало-ли (сам на оффтопике лет 10 не работаю, поэтому и интересно)

Zlogene ()
Ответ на: комментарий от anonymous

Например что-то типа пути к сейв-файлам

Кстати, отличный пример, спасибо.

Pravorskyi ★★ ()
Ответ на: комментарий от Zlogene

в винде нет sed?

в винде есть все
натив

 https://github.com/mbuilov/sed-windows

WSL

user@DESKTOP:~$ apt list sed
Listing... Done
sed/bionic,now 4.4-2 amd64 [installed]
user@DESKTOP:~$ uname -a
Linux DESKTOP 4.4.0-17134-Microsoft #471-Microsoft Fri Dec 07 20:04:00 PST 2018 x86_64 x86_64 x86_64 GNU/Linux
anonymous ()
Ответ на: комментарий от rust_afari

Невероятная история успеха. В цитатник

Deleted ()

Вышел sed 4.6

На радость всем поклонникам этой мозгодробилки.

hhhhacker ()

Когда будет в Дебиан?

user@deb9$ apt-cache show sed | grep -e ^Version
Version: 4.4-1

https://packages.debian.org/sid/sed

Пакет: sed (4.5-2) 
Исходный код sed:
[sed_4.5-2.dsc]
[sed_4.5.orig.tar.xz]
[sed_4.5-2.debian.tar.xz]

pacify ★★★★★ ()
Ответ на: комментарий от AVL2

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

которые пишут себя сами, ага

anonymous ()

И дебаг, и редактирование. Уххх заживём)

Deleted ()

в gentoo я добавил несколько часов назад

Zlogene ()
Ответ на: комментарий от env

Павершел адок ещё тот, но если ты профессиональный индус, вполне автоматизируется. Нонейм студентоподелками 20 летней давности, о которых ты ещё должен знать и которые ещё должны запускаться в последней венде. Хотя в принципе отличий от cmd.exe не много тогда, лол. Павершел это больше про дотнет интерфейсы и com+.

anonymous ()

я удивляюсь, что у таких утилит за столько лет ещё есть, что добавлять в фичи и править :) но в целом это хорошо. хотя я как-то чаще юзаю perl -pe. наверное, привычка. и по-моему перл шустрее. для больших объёмов может оказаться очень существенно.

Iron_Bug ★★★★ ()

Уже вышла версия 4.7 с исправлением бага, который появился в версии 4.6. Баг связан с неправильным определением соответствий регулярным выражениям с '\b' при локали C (как минимум).

$ echo 123-x|LC_ALL=C sed 's/.\bx//'
123-x
ftp://ftp.gnu.org/gnu/sed/sed-4.7.tar.xz

saahriktu ★★★★★ ()
Ответ на: комментарий от env

Согласен, только «херовые автоматизаторы» используют винду.

A-234 ★★★★★ ()

теперь sed пишет в файлы не с построчным буфером, а с полноценным буфером (что должно значительно увеличить производительность «sed -i»)

Это как-то отразится на дефолтном поведении «жадный поиск до конца строки»?

non-cygwin windows environments

Посоветуйте свежую сборку.

olegd ★★ ()

Отличная новость. Спасибо, что выложил. Нужно! 😺

Odalist ★★★★★ ()
Ответ на: комментарий от anonymous

работает

окон нет, кнопок нет --> не работает

anonymous ()

А перловые регекспы что не добавят, включаемые каким нибудь ключом? Я знаю что есть ssed, но было бы неплохо иметь одну утилиту.

Deleted ()

Нужно! Отличная головоломка. Одно время увлекался седом, даже игру на нем написал. После, правда, запил, вылетел из универа и с тех пор забросил программирование. Но это уже совсем другая история...

anonymous ()
Ответ на: комментарий от tnemo

sed, конечно. Awk слишком многословен для однострочников.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.