Hacker News Digest

Тег: #command-line-tools

Постов: 4

An overengineered solution to `sort | uniq -c` with 25x throughput (hist) (github.com)

Проект hist-rs представляет собой высокопроизводительный утилиту для подсчета уникальных строк, написанную на Rust. Его ключевое преимущество — скорость работы, которая в 25 раз превышает производительность классической команды sort | uniq -c в Unix-системах. Это делает его идеальным инструментом для анализа больших лог-файлов и наборов данных, где важна скорость обработки.

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

by noamteyssier • 22 октября 2025 г. в 22:26 • 90 points

ОригиналHN

#rust#performance#data-processing#command-line-tools#text-processing#clickhouse#awk#csv#tsv#github

Комментарии (62)

  • Обсуждение началось с вопроса о производительности различных инструментов для подсчёта уникальных строк в файле, где был упомянут clickhouse-local как самый быстрый способ.
  • Участники обсуждали различные инструменты, включая sort, uniq, awk, uniq -c, sort | uniq -c | sort -n, tsv и csv, а также их производительность и использование памяти.
  • Были упомянуты такие инструменты как tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, tsort, `tsor

Show HN: ut – Rust based CLI utilities for devs and IT (github.com)

Написанная на Rust утилита ut предлагает разработчикам набор инструментов для повседневных задач, вдохновляясь функциональностью it-tools.tech. Она включает конвертеры, генераторы хешей, кодировщики и другие инструменты для работы с данными, кодом и системами. Проект стремится объединить распространённые утилиты в одном месте, упрощая доступ без переключения между сервисами.

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

by ksdme9 • 05 октября 2025 г. в 17:36 • 137 points

ОригиналHN

#rust#cli#command-line-tools#data-processing#hashing#encoding#unix-philosophy#performance#security#github

Комментарии (39)

  • Предложения по распространению: упаковать как Python и NPM модули для удобного запуска через uvx или npx, использовать cargo-dist для автоматизации.
  • Критика архитектуры: обсуждается целесообразность единого бинарника (по аналогии с BusyBox) против множества отдельных утилит в духе UNIX-философии "делай одно дело хорошо".
  • Вопросы к функционалу: предостережения против включения слишком большого количества функций (например, HTTP), предложения добавить конкретные команды (uuidv7, retry).
  • Замечания по реализации: критика требований к вводу (только UTF-8, чтение stdin до EOF), отсутствие тестов для кода, созданного с помощью ИИ.
  • Общая оценка: инструмент воспринят как удобный "швейцарский нож" с продуманными умолчаниями, но вызвал дискуссию о разумных пределах его роста.

Zoxide: A Better CD Command (github.com) 🔥 Горячее 💬 Длинная дискуссия

zoxide — это умная замена команды cd, которая запоминает часто посещаемые каталоги и позволяет быстро переходить по ним с помощью частичного совпадения имён. Она поддерживает все основные оболочки, включая bash, zsh и fish, и использует алгоритм ранжирования для предложения наиболее релевантных путей.

Инструмент работает быстрее аналогов вроде autojump, так как написан на Rust, и интегрируется с fzf для интерактивного выбора. Практический бонус — экономия времени при навигации в сложных проектных структурах.

by gasull • 23 сентября 2025 г. в 04:48 • 291 points

ОригиналHN

#rust#bash#zsh#fish#fzf#autojump#command-line-tools#navigation#github

Комментарии (178)

  • Критика zoxide за нечёткость работы и потенциальные ошибки при навигации, а также предпочтение встроенного поиска по истории ZSH или комбинации с fzf.
  • Положительные отзывы о значительном ускорении навигации и интеграции zoxide в рабочий процесс, особенно в сочетании с другими инструментами (fzf, bat, starship).
  • Обсуждение альтернатив и схожих инструментов (autojump, z, navita, CDPATH в bash/zsh), их сравнение с zoxide.
  • Варианты настройки и использования zoxide, включая алиасы для cd, флаг basedir и интерактивный режим zi.
  • Замечания о том, что для многих пользователей нативные возможности оболочки или другие инструменты покрывают большинство потребностей.

My new Git utility `what-changed-twice` needs a new name (blog.plover.com)

Разработана утилита для Git, которая показывает изменения между двумя коммитами, исключая изменения, общие для обоих. Она помогает анализировать, какие именно правки были внесены в двух разных версиях, убирая пересекающиеся модификации. Это полезно при сравнении веток или при отслеживании вклада разных разработчиков.

Автор ищет новое название для инструмента, так как текущее what-changed-twice кажется ему слишком длинным и неудобным. Он открыт для предложений, которые лучше отражают суть утилиты — сравнение изменений с исключением общих частей.

by jamesbowman • 21 сентября 2025 г. в 21:59 • 76 points

ОригиналHN

#git#version-control#command-line-tools#software-development#code-analysis

Комментарии (37)

  • Обсуждаются варианты названия для утилиты, анализирующей файлы, измененные более одного раза в коммитах (например, what-changed-twice, git-delta, git squash-report).
  • Предлагаются альтернативные инструменты с похожей функциональностью, такие как git absorb, который автоматически вносит изменения в предыдущие коммиты.
  • Упоминается алгоритм "gather" как потенциальная аналогия для процесса группировки изменений.
  • Отмечается практическая польза утилиты для изоляции часто изменяемых файлов и упрощения ребейза.
  • Подчеркивается, что подобные утилиты можно реализовать как отдельные исполняемые файлы в PATH с префиксом git- для интеграции с Git.