LINUX.ORG.RU

GNU Coreutils: теперь 8.8

 


0

0

Вчера, 22 декабря, вышла новая версия GNU Coreutils. Теперь 8.8!

Единственное значительное изменение касается комадны split. Теперь split может разбить файл на N равных (или приблизительно равных) частей, при этой можно указать, должны ли границы между кусками, на которые разбивается файл, проходить строго по концам строк или нет (режим ‘l’). Циклический режим (‘r’) позволяет разбивать на части, кода размер входных данных не определен, например, при работе в конвейере.

Например:

split --number=l/4/10 filename разобьет файл filename на десять частей, четвертый фрагмент (считая от единицы) будет выведен на стандартный вывод, границы фрагментов строго по концам строк. Подробности, как всегда, в info split

Остальные изменения касаются исправления ошибок.

  • cp -u теперь не производит ненужные копирования, обусловленные лишь большей точностью временной метки файла-источника по сравнению с файлом назначения.
  • od печатает числа с плавающей точкой без потери информации.
  • исправлены многочисленные ошибки в sort, касающиеся многопоточной работы (в том числе и сопровождавшаяся ошибкой сегментирования)

>>> Подробности

★★★★★

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

А как оно с юникодом? Научилось работать? Split и fold по-прежнему теряют информацию?

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

>>В Arch в testing пока.

Правильно, Arch стабильный дистрибутив, не то что всякие генты.

Не лопни с жиру.

anonymous
()

>sort

Напомнило: Вчера открыл для себя ключ --human-numeric-sort у sort. Вроде недавно появился, или я раньше внимания не обращал.

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

>Правильно, Arch стабильный дистрибутив, не то что всякие генты.
Учи матчасть, ~arch это тестовая ветка, arch - стабильная

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

Не буду писать что юникод не нужен, он нужен лингвистам и переводчикам, а вот ошибку нужно исправить!

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

Если ты не заметил, в генте оно тоже в тестинг ветке.

philosoft
()
Ответ на: комментарий от muhas

> в cp что-нить вроде статуса копирования появилось? а то надоели всякие обертки

rsync --progress

?

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

да обертки есть, рсинк можно. да хотелось бы прямо в cp - вроде был раньше патч где то ли -g то ли -p делал прогрессбар. вроде мелочь - а приятно =)

muhas ★★★
()

>cp -u теперь не производит ненужные копирования

отлично!

Еще бы rm не производил ненужные удаления и вообще проблем бы не осталось.

исправлены многочисленные ошибки в sort, касающиеся многопоточной работы (в том числе и сопровождавшаяся ошибкой сегментирования)

слава БГ, не напарывался, но вообще для столь взрослой утилиты это странно.

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

Ошибка сегментирования появилась только этой осенью, в версии 8.6. Как бы нормальное развитие.

anarquista ★★★★★
() автор топика

Отлично! Ждем в Ubuntu.

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

>прогрессбар

Избыточно добавлять недоUI в cp. А вот сделать, чтобы он выплевывал статус по получении сигнала — разумно. Тогда можно было бы просто завернуть вызов в алиас через команду, которая бы сама и рисовала прогрессбар.
Эх, поиск signal в man cp ничего не находит, а жаль.

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

[14:17:48] psto.net:
@Shu:
* linux, coreutils
Патч Advanced Copy (добавляет прогрессбар cp и mv) для coreutils 8.8: http://ix.io/1kH/diff
Оригинальный патч для версии 8.4 тут http://www.beatex.org/web/advancedcopy.html

зачет =)
пойду пропатчу как из тестинга в арче выйдет

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

обёртки, патчи... я всегда тупо размер файла назначения сравнивал с размером файла.

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

После вот такого: 481 + printf ( «\r\033[6A» );

можно смело закапывать.

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

> И как связаны функция POSIX и утилита cp?

мммм. не знаю наверное она на нём написана, так?

PS: то была програмистская шутка :-\

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

> Вы мне предлагаете _похакать_ cp? :) Я уже слишком стар и ленив для этого.

Упаси боже! Никогда! Но если что-то захотите поменять, я вам на это даже не намекал, то не надо _выламвать_ нам стены - войдите через дверь.

alx_me ★★☆
()

при этой можно указать

Как-то оно не по-русски выглядит. Может быть так: «при этой команде можно указать.. » или еще как-нибудь исправить, а то сразу в глаза бросается.

nt_crasher ★★★
()

split в конвейере - очень интересно! Уже есть пара мыслей по применению

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

> «При этом» наверное имелось в виду. Опечатка просто.

Да. Почему-то у меня сегодня очень много таких опечаток, «й» вместо «м». Часть исправил, часть проглядел.

anarquista ★★★★★
() автор топика

>кода размер входных данных не определен
када

когда(?)

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

Это не страшно. Многие вообще их не видят, когда читают. Так что сильно не переживайте.

wbrer ★★★
()

> Теперь 8.8!

Уже звучит как ощутимое преимущество.

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

По типу: sys-apps/pv не годится? Или app-misc/bfr. Не помню какая из них полное говно, а какая ещё куда ни шло. Но лучше конечно интерактивно как nmap. isatty и на кнопочку enter или сигнал HUP выводить текущее состояние но всё это естественно на ключик типа -P а то select/лишний read снижает производительность.

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

> делал прогрессбар. вроде мелочь - а приятно =)

Эти «приятности» ортогональны UNIX-way: «сиди за чёрнозелёным терминалом, юзай vi и гоняй текстовые потоки из одной перделки в другую».

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

> Эти «приятности» ортогональны UNIX-way:

Гормоны мешают. Сначал заводим бабу, потом изучаем unix-way. А то писка много а понимания мало.

Вы не поняли. Прежде чем критиковать консоль нужно попытаться ей попользоваться. Увидеть плюсы и минусы. Кричать без основания глупо и выдаёт невежду. В большинстве случаев консоль более эффективна по одной простой причине. Самый широкий интерфейс в виртуальность это клавиатура. И чем сложнее и шире комплекс задач тем более применима консоль, скрипты и всё связанное с ними хозяйство.

А для решения указанной задачи давно есть кавайный unix-way: cat /src | pv > /dst и будет им и progressbar и bitrate.

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

>А для решения указанной задачи давно есть кавайный unix-way: cat /src | pv > /dst и будет им и progressbar и bitrate.

И давно cat стал аналогом cp?

$ cat /src | pv > /dst
cat: /src: Это каталог

Во-вторых, указанный вами конвеер никакого прогрессбара не нарисует. man pv.
Ну и useless cat award, да.

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

боянишь, я линк почти сразу уже дал на патч (причем для последней версии а не для старинного дебьяновского 8.5)

muhas ★★★
()

>комадны

Проверено: Shaman007


команды
Проверено: yaws

yaws
()

А для генты оверлейчик уже напукан ?

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