[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Минималистичный инструмент для организации хранения структуры данных "многие ко многим"



Denis -> Victor Wagner  @ Thu, 22 Feb 2018 00:15:43 +0700:

 >>> Предложите инструмент по сабжу. Решается задача для fun'a, поэтому не
 >>> стесняйтесь (общение в рамках решения этой задачи является частью
 >>> fun'а)
 >> Используйте обычные coreutils. Их возможности (если вместе с awk)
 >> вполне достаточны для решения поставленной задачи.
 >> Храните данные в формате Tab separated  по одной таблице в файле и
 >> впред.
 > awk и Tab separated — почти то, что нужно.

 > Но учитывая, что awk пользуюсь не часто, а очень редко, то решение задачи по
 > организации простейших репортов в моем случае подходит под определение "допил"
 > (см. 4-й пункт). Буду признателен если подскажите ссылку на однострочники или
 > кратчайший туториал по использованию инструмента в контексте моей
 > задачи. Кратчайший означает, что его содержимое сводится к формуле "хочешь так
 > — пиши вот эту строчку" и не потребует от меня умственных усилий по синтезу
 > нужных команд для малознакомого инструмента.

Если говорить о tab separated и однострочниках, то однозначный выбор
языка - perl.

 >> Если же хочется использовать sql, то рекомендую sqlite. У него формат,
 >> конечно, не текстовый, но зато оно нет требует никаких постоянно
 >> работающих процессов, как рекомендованный в соседнем письме mysql.
 > sqlite - на самый крайний случай, если не найдется ничего более
 > удовлетворительного по 3-му пункту (awk, например, больше "suck less" чем
 > питон и sqlite).

Я бы, пожалуй, взял все-таки sqlite. А в качестве языка - SQL, ага. У
sqlite есть одноименная команднострочная утилита.

 >> Ну и скрипты лучше писать не на баше, а на питоне. Благо у него
 >> поддержка sqlite в стандартной библиотеке.
 >>
 >> Я вообще считаю, что писать "на баше" не следует никогда. Если ты
 >> пишешь шелловский скрипт, он должен быть совместимым со
 >> стандартным /bin/sh. Повторяю - не с ash, который у нас обычно заменяет
 >> /bin/sh, не с фрибсдшным /bin/sh (хотя и с ними тоже), а с настоящим
 >> юниксовым Bourne Shell (из ближайшего соляриса).

 >> Если же возможностей bourne shell не хватает, стоит сразу
 >> переориентироваться на perl, python, ruby или lua.
 >>
 > Об этом спорить не буду, уверен, что ваша позиция при рассмотрении в
 > более крупном масштабе правильнее моей, но т.к. в качестве шелла мне
 > приходится использовать только bash, то и писать буду на нем. А
 > укрупняться в этом смысле мне в ближайшие годы вряд ли придется
 > , т.к. хватает возможностей Bourne Again Shell.

Пользоваться башем интерактивно можно. А вот писать на нем нельзя.


Reply to: