LINUX.ORG.RU
ФорумTalks

В Саванне новый проект - SHELECT

 , , shelect


1

2

Сабж. Описание проекта:

A small bash script where the bash is used as a glue to combine basic text
commands (as cut, join, sort) in a SQL way.
It operate on text files, formed as relationnal table.  The only addition to a
simple "field separated" text file is a header giving the columns name.
Проект зарегистрировал Dominique Corfa <docorto>. Лицензия GNU General Public License v3 or later.

Скачать: https://savannah.gnu.org/submissions_uploads/SHELECT.tar.bz2

★★★★★

А на гитхабе новых реп не зарегистрировали случаем? Это ж тоже очень важная и нужная инфа.

morse ★★★★★
()
Ответ на: комментарий от WitcherGeralt

Примеры автора:

$ SHELECT \* FROM table
# id,nom,prenom
01,De La Fontaine,Jean
02,Marcœur,Albert
03,Klee,Paul
$ SHELECT \* FROM table ORDER BY nom
# id,nom,prenom
01,De La Fontaine,Jean
03,Klee,Paul
02,Marcœur,Albert
$ SHELECT prenom nom FROM table
# prenom,nom
Jean,De La Fontaine
Albert,Marcœur
Paul,Klee
$ SHELECT \* FROM table WHERE 'prenom=="Jean"'
# id,nom,prenom
01,De La Fontaine,Jean
$ SHELECT \* FROM customer
# id,name,phone
1,Corfa,33678912345
2,Dupont,33666666666
3,Dupond,33606060606
И т.д.

saahriktu ★★★★★
() автор топика

Нужно

Некоторое время назад искал такое, даже хотел сам написать.

Evenik ★★
()
Ответ на: комментарий от saahriktu

Вспомнил, где-то видел уже, годно. Мне-то вообще нужно, но забыл, что это есть. Спасибо.

WitcherGeralt ★★
()

Ненужно. Есть .NET core, а в нём есть LINQ.

DELIRIUM ☆☆☆☆☆
()
Ответ на: комментарий от sT331h0rs3

The only addition to a simple «field separated» text file

«field separated» text file

field separated

лучше бы CSV парсили

Разве CSV не является частным случаем DSV?

Evenik ★★
()
Ответ на: комментарий от question4

Во всем, что притаскивает нам ТС, с какой-то вероятностью =)

t184256 ★★★★★
()
Ответ на: комментарий от no-such-file

Так-то есть join,а подзапросы можно делать через <(...)

legolegs ★★★★★
()
Ответ на: комментарий от saahriktu

Наконец, мне эта штука таки понадобилась, но у меня она не заработала. Причём не работают ни эти примеры, ни даже пример из хелпа:

printf "# a,b,c\nx,3,a\nz,1,a\ny,8,a\nw,10,b" | ./SHELECT c "sum(b)" FROM - WHERE 'a<"z"' GROUP BY c
./SHELECT: line 578: ${#selecti}-1: substring expression < 0
# 
awk: /tmp/SELECTawk37961: line 5: 9e999 : decimal overflow

./SHELECT \* FROM table # первый пример
./SHELECT: line 578: ${#selecti}-1: substring expression < 0
#

В каком окружении это у тебя работает?

bash --version
GNU bash, version 4.4.19(1)-release (x86_64-pc-linux-gnu)

awk -W version
mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan

compiled limits:
max NF             32767
sprintf buffer      2040
WitcherGeralt ★★
()
Ответ на: комментарий от WitcherGeralt

Странно. У меня тоже не заработало. Я думал, что потому, что у меня bash 4.3. Ошибка такая же:

line 578: ${#selecti}-1: substring expression < 0
Может быть, она не с bash'ем связана, а с чем-то ещё. А вот связанной с awk'ом ошибки у меня не было.
$ rpm -q gawk
gawk-4.1.4-1.mga6

saahriktu ★★★★★
() автор топика

они переизобрели фокспро? вообще, мне кажется, что я это лет цать назад где-то читала.

Iron_Bug ★★★★★
()
Ответ на: комментарий от saahriktu

При этом ссылку на тарбол из стартового поста мне найти удалось.

признавайся, ты разработчик? Или как вообще до тебя дошла инфа о том, что он зарелизился?

Deleted
()
Ответ на: комментарий от Deleted

Разработчик проекта из Франции. А про проект я узнал через FTP'шник. Пустую директорию же создали.

saahriktu ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.