#!/bin/bash # ULTRA KOMPAKTNE CURL PÄRING # Ainult 3 välja: Pealkiri, Allikfail, Uurimisküsimus GRAPHQL_URL="http://100.80.222.54:9020/v1/graphql" OUTPUT_CSV="$HOME/Downloads/articles_ultra_compact.csv" echo "📡 Toon ultra-kompaktset artiklite nimekirja..." echo " Väljad: title, source_file, uurimisküsimus" echo "" # CSV pealkiri echo '"#","Pealkiri","Allikfail","Uurimisküsimus"' > "$OUTPUT_CSV" # Päring ja CSV genereerimine curl -s "$GRAPHQL_URL" \ -X POST \ -H "Content-Type: application/json" \ -d '{ "query": "{ Get { ScientificArticle(limit: 700) { title source_file summary_et } } }" }' \ | jq -r ' .data.Get.ScientificArticle[] | # Eraldab uurimisküsimuse ( if .summary_et then ( .summary_et | # Otsi "Uurimisküsimused ja eesmärgid:" sektsiooni (match("Uurimisküsimused ja eesmärgid:.*?\\*\\*(.+?)(?=\\n\\*\\*|$)"; "s") // {captures: [{string: "N/A"}]}).captures[0].string | # Eemalda markdown märgid gsub("\\*\\*"; "") | gsub("\\*"; "") | # Lõika 200 tähemärgini .[0:200] | if length == 200 then . + "..." else . end ) else "N/A" end ) as $research | # Genereeri CSV rida [ .title, (.source_file | split("/") | .[-1]), $research ] | @csv ' \ >> "$OUTPUT_CSV" # Nummerda read awk -F',' 'NR==1 {print; next} {print NR-1 "," $0}' "$OUTPUT_CSV" > "${OUTPUT_CSV}.tmp" && mv "${OUTPUT_CSV}.tmp" "$OUTPUT_CSV" echo "✅ CSV fail salvestatud: $OUTPUT_CSV" echo "" # Näita statistikat ARTICLE_COUNT=$(wc -l < "$OUTPUT_CSV") ARTICLE_COUNT=$((ARTICLE_COUNT - 1)) # Miinus päis echo "📊 Statistika:" echo " - Artikle kokku: $ARTICLE_COUNT" echo " - Faili suurus: $(du -h "$OUTPUT_CSV" | cut -f1)" echo "" echo "🚀 Kasutus:" echo " 1. Ava Excelis: open $OUTPUT_CSV" echo " 2. Google Sheets: Import → Upload CSV" echo " 3. LibreOffice: libreoffice --calc $OUTPUT_CSV" echo "" echo "💡 Näpunäide:" echo " - Excelis: Data → Text to Columns (komadega eraldatud)" echo " - Sorteerimine: Vali veerg → Data → Sort" echo " - Filter: Data → AutoFilter"