The OpenNET Project / Index page

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

Выпуск набора базовых системных утилит GNU Coreutils 8.31

11.03.2019 20:46

Доступна стабильная версия набора базовых системных утилит GNU Coreutils 8.31, в состав которого входят такие программы, как sort, cat, chmod, chown, chroot, cp, date, dd, echo, hostname, id, ln, ls и т.д.

Основные новшества:

  • В утилиту "id" добавлена возможность отображения идентификаторов сразу для нескольких пользователей;
  • В утилиту "date" добавлен флаг '+' для преобразования формата времени в соответствии с POSIX.1-2017;
  • В утилитах printf, seq, sleep, tail и timeout появилась возможность указания чисел с плавающей точкой в соответствии с форматом, определённым как текущей локалью, так и локалью "C". Например, теперь можно указывать как 'sleep 0,1', так и 'sleep 0.1';
  • В утилиту "test" добавлен унарный оператор '-N FILE', позволяющий определить, что файл существует и был изменён с момента последнего чтения. Прекращена поддержка недокументированного оператора 'test -a FILE' (аналог 'test -e FILE'), который можно было спутать с бинарным оператором "-a" (логическое "and");
  • В утилите "env" появилась возможность настройки обработчиков сигналов для запускаемого приложения: '--default-signal[=SIG]', '--ignore-signal[=SIG]', '--block-signal[=SIG], а также добавлена опция '--list-signal-handling' для проверки использования обработчиков сигналов, отличных от применяемых по умолчанию;
  • Добавлена новая утилита basenc, которая дополнила команды base64 и base32 возможностью кодирования и раскодирования текста в различных типовых кодировках (base64, base64url, base32, base32hex, base16, base2, z85);
  • В утилиты "stat" и "tail" (tail -f) добавлена поддержка файловой системы "sdcardfs", используемой в платформе Android. В "stat" также добавлен вывод времени создания файла, если данный атрибут поддерживается в ФС, glibc (2.28+) и ядре Linux (4.11+).


  1. Главная ссылка к новости (http://savannah.gnu.org/forum/...)
  2. OpenNews: Выпуск GNU Binutils 2.32
  3. OpenNews: Выпуск набора базовых системных утилит GNU Coreutils 8.30
  4. OpenNews: Релиз netutils-linux 2.5, утилит для мониторинга и тюнинга сетевого стека Linux
  5. OpenNews: Выпуск GNU Diffutils 3.4 с поддержкой цветного вывода
  6. OpenNews: Подготовлен вариант GNU Coreutils, переписанный на языке Rust
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/50293-coreutils
Ключевые слова: coreutils
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (48) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, анон ессно (?), 20:56, 11/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Например, теперь можно указывать как 'sleep 0,1', так и 'sleep 0.1'

    ну наконец-то

     
     
  • 2.4, Аноним (4), 21:41, 11/03/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Извращение какое-то.
     
  • 2.9, Дон Ягон (?), 22:21, 11/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Мне вот интересно, а кто правда на серьёзных щщах использует дробные аргументы к sleep? И зачем? Ведь поддержку зачем-то добавили - значит, вероятно, есть и пользователи "фичи"?
    Я заинтригован, короче.
     
     
  • 3.11, пох (?), 23:07, 11/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Мне вот интересно, а кто правда на серьёзных щщах использует дробные аргументы к sleep? И зачем?

    затем, что пауза нужна, но при 40conn/s на целую секунду "заснуть" - получить "массовый инцидент". Минус премия.
    А достаточно, чаще всего, и 0.1

     
     
  • 4.14, Дон Ягон (?), 23:51, 11/03/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > 40conn/s
    > /bin/sleep

    Так, конечно, можно, и даже иногда оправдано, но в целом..
    Ну и может я не так тебя понял - не понятно, зачем нужна пауза вообще, например.

    (я про sleep(1) высказывался, и новость про неё, а не про sleep(3), если что)

     
     
  • 5.26, пох (?), 10:47, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Ну и может я не так тебя понял - не понятно, зачем нужна пауза вообще

    случаи разные бывают, в сложном софте из многих компонент - вроде вот оно и завершило действие (если вообще умеет об этом сообщить) - а по факту где-то что-то еще держит.
    Процессоры нынче не те что в 84м году, поэтому секунду ждать незачем - и 0.1-то много.

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

    вот и получаем кодогенератор, в зависимости от локали пихающий в код запятые вместо точек.

     
     
  • 6.28, Дон Ягон (?), 13:54, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ну т.е. речь о странных костылях. Ок.
    На крепко-крепко нагруженной системе fork+exec может выполняться дольше, чем 0.1 секунда)
     
  • 5.27, PnDx (ok), 13:18, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Пример из жизни.
    Переезжает, к примеру, ip-адрес из точки "А" в точку "Б".
    Ну вот совсем уже́ собрал вещи и поехал.
    В точке "Б" параноик со стажем кидает что-то вроде "arping -D" чтобы убедиться, что из точки "А" жилец таки съехал (потому что всякое бывает). А он возьми да и ответь (ещё не успел убраться). Надо подождать, да? А сколько?
     
  • 3.34, Аноним (34), 21:19, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    иногда надо запустить какую-то операцию в бесконечном цикле, но при этом, если это делать без паузы, а операция интенсивная, но при этом короткая, то машина загрузится "в полку", что зачастую не требуется (хорошим примером такой операции является простая аналитика системных метрик, выводимая в реальном времени).
    И вот в этом случае, если вместо while true; do ... написать while sleep 0.05, то лишнего потребления ресурсов будет минимум, но при этом операция будет выполняться с достаточной интенсивностью (а не раз в секунду).
     
     
  • 4.37, Дон Ягон (?), 22:15, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Имхо, 1 секунда - это достаточно хорошо в 99% случаев. Если хочется по-настоящему не мешать никому, стоит подумать о лимитировании и гарантировании ресурсов и о прочих nice. Или можно ещё вставлять sleep внутри самой программы, которую запускают в бесконечном цикле - гранулярность повысится, планировщик сможет эффективнее распределять процессорное время между процессами.
     
     
  • 5.45, ig0r (??), 11:29, 14/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    "sleep 0.1" можно было использовать давно, новость в том что теперь можно писать  "sleep 0,1"
     
     
  • 6.48, Дон Ягон (?), 21:48, 20/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > "sleep 0.1" можно было использовать давно, новость в том что теперь можно писать  "sleep 0,1"

    Да, я в курсе. Но в начале ветки я спросил именно про дробные аргументы и их востребованность, а не про изменения из новости.

     
  • 3.35, Ordu (ok), 21:33, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да ладно, теперь можно указать 1.5m не пытаясь в уме умножить 60 на 3/2. Я ненавижу арифметику с начальной школы, а сегодня я ещё и не понимаю, почему я ею должен заниматься, сидя перед компьютером.
     
     
  • 4.36, Дон Ягон (?), 21:36, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Мне стоило уточнить, что я про доли секунды, да. 1.5m выглядит как что-то однозначно полезное.
     
  • 2.12, пох (?), 23:10, 11/03/2019 [^] [^^] [^^^] [ответить]  
  • –3 +/
    мне вот интересно, скоро ли они повторят древний-древний баг с генерацией "postscript" документов с запятыми вместо точек (совершенно неполиткорректный и ни разу не locale'зированный принтер, почему-то, такое не печатал)

    явно в незамутненных сознаниях к этому все и идет.

     
     
  • 3.32, yet another anonymous (?), 14:40, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Numbers
    ...
    A real number consists of an optional sign and one or more decimal digits, with
    an embedded period (decimal point), a trailing exponent, or both. The exponent,
    if  present,  consists  of  the  letter  E or e followed by an optional sign and one or
    more decimal digits. The number is interpreted as a real number and is converted
    to  a  real  (floating-point)  object.  If  it  exceeds  the  implementation  limit  for  real
    numbers, a limitcheck error occurs.

    (PostScript LANGUAGE REFERENCE).

    Смотря что там внутри было, вообще-то.

     
     
  • 4.33, пох (?), 18:16, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Смотря что там внутри было, вообще-то.

    это какой-нибудь 97й, я уже не вспомню деталей - самое начало нашествия локализаций и интернационализаций. Тогда поржали и разошлись, поскольку не посчитали серьезной проблемой. А теперь вот оно - "как в винде!". Где даже csv не csv.

     

  • 1.3, Аноним (3), 21:37, 11/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В утилиты "stat" и "tail" (tail -f) добавлена поддержка файловой системы "sdcardfs", используемой в платформе Android.

    Разве tail не должно быть фиолетово, какая ФС ? Интересно, зачем эти костыли. Хотя может из гулага кто-то свою NIH-поделку вмержил.

     
     
  • 2.10, Аноним (10), 22:27, 11/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Интересно -- почитайте код.
     
  • 2.13, пох (?), 23:14, 11/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Разве tail не должно быть фиолетово, какая ФС ?

    ну, если ты хочешь, чтобы он работал по методу "прочитать весь трехтерабайтный файл, выбросить содержимое, напечатать последние строчки" - то фиолетово.
    А если нет, начинаются проблемы и код перестает быть тривиальным.

    особенно если вспомнить, что он вообще-то - gnu, а не "ваш новый стандарт", поэтому надеяться, например, на работающий inotify можно только в крайнем случае.

     
  • 2.16, Аноним (16), 01:58, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Написано же что речь о флаге -f. С ним tail выводит файл по мере его аппендинга, нужен inotify
     
     
  • 3.18, Аноним (3), 02:48, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Простите, был невнимателен.
     

  • 1.8, Дон Ягон (?), 22:12, 11/03/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    > В утилиту "id" добавлена возможность отображения идентификаторов сразу для нескольких пользователей;

    Эпохальное нововведение, чо. Я так понимаю, тривиальные шеловые скрипты - это уже не модно?

     
     
  • 2.15, IRASoldier (?), 01:12, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Что-то в сферически свободно-открытом сделали удобнее. Мелочь, но приятно. Олдфаг-старпёр ожидаемо: "фууу..."
     
     
  • 3.17, Аноним (16), 02:00, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Это не "фу", а "почему только щяс???7"
     
     
  • 4.19, IRASoldier (?), 03:29, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    >> Это не "фу", а "почему только щяс???7"

    "Джва года ждали!" :=)


     
  • 3.20, Дон Ягон (?), 03:43, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это не фу, это недоумение. Я не понимаю, какую проблему (не решённую тривиально ранее) это решает?
    Вроде бы и ничего плохого, но и хорошего (полезного) тоже ничего.
    Видимость прогресса - это кажется так называется.
     
     
  • 4.21, gsdh (?), 04:38, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > какую проблему (не решённую тривиально ранее) это решает?

    проблему, нет, удобство

    > Вроде бы и ничего плохого, но и хорошего (полезного) тоже ничего.

    Зря, это оптимизация кода, раньше в цикле разбора нужен был флаг, что имя юзера указанно, раньше нужна была обработка ошибки лишних параметров, теперь нет. Код стал проще, памяти жрет меньше, функционал лучше, чем не прогресс

     
     
  • 5.22, Дон Ягон (?), 05:04, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> какую проблему (не решённую тривиально ранее) это решает?
    > проблему, нет, удобство

    Это можно было сделать тривиальной функцией в .yourshittyshellrc.

    > Зря, это оптимизация кода
    > Код стал проще, памяти жрет меньше, функционал лучше

    Это оптимизация того, что никогда не тормозило. А следовательно - бесполезное излишество.

    > чем не прогресс

    Тем, что практической пользы никакой. Сделали то, что и так у всех прекрасно работало. Кто-то очень захотел, чтобы его коммит остался в логах coreutils, не иначе. Это изменение ради изменения, в нём нет вообще никакой нужды.

     
     
  • 6.23, gsdh (?), 06:52, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    это называется вылизывание кода, почему так не сделали сразу не понятно, но это тривиальнейший алгоритм.

    > Кто-то очень захотел, чтобы его коммит остался в логах coreutils

    Кто-то не поленился и сделал красиво

    > Это оптимизация того, что никогда не тормозило. А следовательно - бесполезное излишество.

    очевидно, когдингом вы никогда не занимались.

    Когда первые "рыбы" выползли на сушу, их сородичи, наверняка, тоже "думали", что ползти мягким брюхом по острым камням, это полный бред и ненужно, и теперь, когда, потомки тех "сумасшедших" возглавили пищевую пирамиду, вопрос кто прав, очевидно, не стоит.

     
     
  • 7.29, Дон Ягон (?), 14:02, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >  это называется вылизывание кода, почему так не сделали сразу не понятно, но это тривиальнейший алгоритм.

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

    > Кто-то не поленился и сделал красиво

    Да не красиво, а избыточно. Кусок шела, запускаемый 1/1000 раз (как часто вы делаете id для пачки юзеров?) переехал в код id.

    > очевидно, когдингом вы никогда не занимались.

    Очевидно занимался. И вынес из этого для себя ценное, но чрезвычайно непопулярное в наше время знание: программы бывают законченными. Когда-то можно или нужно остановиться. А не имитировать прогресс, впихивая в код все фичи, которые только придумать получится.
    С твоей логикой, неплохо бы id и опечатки в именах юзеров исправлять научится, а что, удобно же! А по мне - это ад и изнасилование простоты и unixway.

     
     
  • 8.38, gsdh (?), 00:35, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще никогда не пользовался, тузлой Раньше парадигма программирования была дру... текст свёрнут, показать
     
     
  • 9.39, Дон Ягон (?), 01:37, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Это многое объясняет Какая Какая была, какая сейчас gt оверквотинг удален... большой текст свёрнут, показать
     
     
  • 10.40, gsdh (?), 05:09, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Вы это расскажите тем, кто ходит через жд за пределами санитарных зон, в европе ... текст свёрнут, показать
     
     
  • 11.41, Дон Ягон (?), 05:37, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    А вы это вообще к чему Перешли от аналогии к реальному миру По теме сказать не... текст свёрнут, показать
     
     
  • 12.42, gsdh (?), 07:10, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Это тоже аналогия, уже которая по счету на тему, быть или не быть Да ладно, впер... текст свёрнут, показать
     
  • 6.25, IRASoldier (?), 07:02, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Это оптимизация того, что никогда не тормозило. А следовательно - бесполезное излишество.

    Так а вам о того чем плохо? Это опенсорс, тут человекочасы и бабки компании не тратятся, кто-то просто захотел сделать покрасивее, поидеальнее - ну и супер. До того - кто-то не захотел, а тут - захотел. Вам это бесполезное излишество? Ну так вы же за него не доплатили X долларов YZ центов (только сегодня скидка в 20%!), вам его просто так дали. Пользуйтесь себе. Это и есть СВОБОДНЫЙ СОФТ и его преимущества в хорошем смысле этого слова. Вот если бы хуже сделали, тормозить начало - тогда недовольство понятно. А так вы просто бухтите по поводу того, что кто-то потратил свое собственное время так, как будто он это время у вас украл и вас заставил делать это "бесполезное".

     
     
  • 7.30, Дон Ягон (?), 14:06, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А так вы просто бухтите по поводу того, что кто-то потратил свое собственное время

    А что, нельзя? Если кто-то что-то делает забесплатно, я что, должен только за это ему в ноги кланяться? Если я считаю, что изменения бессмысленны, я буду, при нужде, говорить об этом, стоимость труда автора мне не интересна в любом случае, не о ней вообще речь.

     
     
  • 8.43, IRASoldier (?), 08:55, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Не то, чтобы прямо в ноги - но элементарное чувство благодарности не помешает К... текст свёрнут, показать
     
     
  • 9.47, Дон Ягон (?), 21:44, 20/03/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Но и не поможет Это демагогия Я сделал утверждение об отсутствии полезности, м... текст свёрнут, показать
     
     
  • 10.49, IRASoldier (?), 17:38, 21/03/2019 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Т е - словесный понос, что и требовалось доказать ... текст свёрнут, показать
     
     
  • 11.50, Дон Ягон (?), 13:13, 22/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Ты уймёшься уже или нет И научись, кстати, читать, я вполне явно написал, что в... текст свёрнут, показать
     
     
  • 12.51, IRASoldier (?), 12:16, 23/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Это тебе так кажется ... текст свёрнут, показать
     
     
  • 13.52, Дон Ягон (?), 14:05, 23/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Ой всё ... текст свёрнут, показать
     
  • 4.24, IRASoldier (?), 06:55, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Мелкое удобство. В каких-то утилитах улучшений больше, в каких-то меньше. В чём проблема? И, кстати, насчёт "видимости прогресса" - новомодные патчи/релизы "каждый день" с наворачиванием мегафич здесь просто не нужны. Coreutils есть, они just работают, им не нужно куда-то особенно прогрессировать. И это очень хорошо.
     
     
  • 5.31, Дон Ягон (?), 14:07, 12/03/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > новомодные патчи/релизы "каждый день" с наворачиванием мегафич здесь просто не нужны

    Истинно так! Вот бы и не пилили не пойми что не пойми зачем.
    Хотя я конкретно в этих изменениях и трагедии не вижу, повторюсь.

     
     
  • 6.44, IRASoldier (?), 08:56, 13/03/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я понял... Дяденька, вы просто тупы, вам бесполезно объяснять, что ваши претензии глупы и нафиг никому не упали.
     
     
  • 7.46, Дон Ягон (?), 21:37, 20/03/2019 [^] [^^] [^^^] [ответить]  
  • +/
    > Я понял... Дяденька, вы просто тупы, вам бесполезно объяснять, что ваши претензии
    > глупы и нафиг никому не упали.

    Только заметил сей глубокомысленный ответ. Был бы умным - промолчал бы, но т.к. я тупой...

     

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



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

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