The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"Представлена новая командная оболочка nushell"
Отправлено Дон Ягон, 31-Авг-19 21:34 
>> awk - утилита для обработки текста.
> На каждый чих запилим по языку фильтрации. Разве нужна концепция unix, чтобы заниматься этой хнёй?

Она именно в этом и заключается. Поэтому, например, мы имеем отдельно awk и sed (были бы они ещё одинаковые в bsd и linux.. но это уже другая история).

> Не нужен find со встроенным sql -- это не unix-way.

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

> Нужен find, который на выходе выдаёт вывод, который затем можно обрабатывать универсальной утилитой с синтаксисом sql. Или с синтаксисом R. Или ещё каким.

А зачем он нужен? Чтобы выпендриваться типа крутой архитектурой? Но она выходит сильно круче решаемых задач -> оверинжиниринг.
Ей богу, я могу придумать только какую-то оторваную от реальности жесть, чтобы sql в find был оправдан. В обычных задачах пользы от этого не будет.
Следовательно конструировать весь этот ужас со "сменными насадками" смысла нет.

И в любом случае, вы можете написать утилиту с каким угодно синтаксисом, которая будет разбирать выхлоп find. Но ведь это не то, чего хотите вы? Вы хотите чтобы недо-find только отдавал описание объектов ФС в каком-то бинарном формате и произвольное число фронтендов, этот формат читающих?
Если да, то это абсурд, потому что не понятно, зачем в этой схеме недо-find нужен вообще - можно же сразу читать данные с ФС, из самой программы, недо-find тут - избыточная абстракция.

> Можно иметь несколько таких утилиток, с синтаксисами заточенными под разные случаи или вкусы.

Можно, но не нужно.

> И вот тогда это будет unix-way:

Это будет оверинжиниринг.

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

А где грань разумности? Можно ведь чуть ли не каждый сискол обернуть примитивной программой и потом конвееры из них строить. Или наоборот, писать монстров на все случаи жизни, а-ля systemd - некоторые тоже считают, что это юниксвейно, ведь оно решает задачу только одну задачу - запуск программ, просто смотрит на неё "достаточно широко"...
Как мне кажется, делать нужно только самые основные возможности, плюс наиболее практичные и часто нужные, если их тривиально написать. Остальной функционал, при необходимости, реализуется сторонними приложениями, которым через пайп передаются данные от предыдущего и так далее.
Если мы говорим о юниксвейном приложении для базовой поставки с ОС.

> Если же поисковой синтаксис прибит гвоздями к find, то выбора уже не остаётся.

Всё так. Но синтаксис не является признаком "юниксвейности".

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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