micro365/src/data/scripts/pipeline.sh

21 lines
1.1 KiB
Bash
Raw Normal View History

2023-07-17 16:57:56 +00:00
#!/bin/bash
cd ../processing
2023-08-02 09:43:25 +00:00
jq -r '. | select((.pos=="noun") or (.pos=="verb") or (.pos=="adj") or (.pos=="adv")) | select((.word | test("[^a-z]"))|not) | {word: .word, form_of: .senses[].tags | any(. == "form-of"), type: .pos, pronunciation: .sounds[0].ipa, definitions: (try .senses|map(.glosses|join(" ")))}' \
2023-07-19 13:25:35 +00:00
wiktionary.json > wiktionary-p1.json
2023-07-17 16:57:56 +00:00
2023-07-19 13:25:35 +00:00
jq --slurp '. | group_by(.word)[] | {word:.[0].word, pronunciation:.[0].pronunciation, meanings:[.[]|{type:.type, definitions:[try .definitions[]]| select(.!=[]) |map({(.):1})|add|keys_unsorted}]}' \
wiktionary-p1.json > wiktionary-p2.json
2023-07-17 16:57:56 +00:00
2023-07-19 13:25:35 +00:00
jq --slurp '.' wiktionary-p2.json > wiktionary-p3.json
2023-07-17 16:57:56 +00:00
2023-07-17 17:33:35 +00:00
#extract samples
timestamp=$(date +%s)
jsonl=wiktionary-p2.json
jq '. | select(.word=="chocolate")' $jsonl > ../samples/chocolate-$timestamp.json
jq '. | select(.word=="write")' $jsonl > ../samples/write-$timestamp.json
jq '. | select(.word=="terrible")' $jsonl > ../samples/terrible-$timestamp.json
jq '. | select(.word=="look")' $jsonl > ../samples/look-$timestamp.json
2023-07-19 13:25:35 +00:00
jq '. | select(.word=="looks")' $jsonl > ../samples/looks-$timestamp.json
jq '. | select(.word=="edges")' $jsonl > ../samples/edges-$timestamp.json