> Можно, но на мой взгляд, это будет все равно костыль/полумера - передаем через пайп данные в виде текста, только в дополнительной обертке + с сильным оверхедом, да еще и только для вывода данных - "скормить" вывод в пайп следующей стандартной утилите без доп. обработки не получится.Имхо, это не столько костыль или полумера, сколько "не нужно" в бОльшей части случаев. А там, где от этого польза таки есть, она незначительна и представляет собой упрощение написания команды и/или её сокращение и/или более явное описание того, что хочется получить.
> Хотя, с другой стороны, задумано libxo вообще-то для "форматированного вывода" - с чем оно, имхо, прекрасно справляется.
Как по мне, libxo задуман, чтобы не парсить выхлоп сложных и специфичных утилит а-ля gpart или netstat из скриптов. В большей степени на perl/python/ruby/js/..., хотя sh + jq (или аналог) тоже возможен (только зачем?).
> в ls как раз еще не встроили
Пишут, что встроили - https://svnweb.freebsd.org/base?view=revision&revision=284198 + https://wiki.freebsd.org/LibXo .
Но сам я давно FreeBSD не использовал, так что лучше проверить, может отломали обратно - я не знаю.
> А вот тут я не согласен - посмотрите на реализацию этого в wc
...
> Т.е. никаких особых усложнений нет, зато предоставлется одинаковый формат вывода утилит.
То, что гнутые утилиты жирны и часто представляют собой торжество оверинжиниринга, а бсдшные в целом нет - не новость.
Однако, впиливание libxo в условные ls или wc - это тоже неоправданное усложнение.
Зачем хочется получать выхлоп условного netstat в json/xml мне понятно, зачем хочется получать выхлоп ls/wc в них - не понятно. Любой язык программирования позволяет сделать это своими средствами и так и надо делать. Вызывать ls --libxo json для получения списка директорий из условного perl/python - говнарство. Не надо давать возможность делать так.
Если бы с этим можно было бы как-то удобно работать из shell, типа как в nushell, например, это имело бы какой-то смысл. Но нет. И рождается теперь такое например: https://unix.stackexchange.com/questions/407850/how-to-use-t...
Стоит ли говорить, что лучше бы он просто написал на perl то, что ему нужно?
Я, с одной стороны придираюсь, с другой стороны правда не понимаю зачем неплохую идею доводить до абсурда.