Difference between revisions of "JQ"
From HackerNet
(Created page with "jq är en command-line JSON parser. =Installation= <ul class="nav nav-tabs"> <li class="active"><btn data-toggle="tab" class="">#tab1|CentOS 7</btn></li> <li><btn data...") |
|||
(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | jq är en command-line JSON parser. | + | jq är en command-line JSON parser. Som kan användas precis lika enkelt som [[sed]],[[awk]] och [[grep]] används för text. |
=Installation= | =Installation= | ||
Line 9: | Line 9: | ||
<div class="tab-content"> | <div class="tab-content"> | ||
<div id="tab1" class="tab-pane fade in active"> | <div id="tab1" class="tab-pane fade in active"> | ||
− | + | {{Epel-repo}} | |
+ | Kör sedan: | ||
sudo yum install jq | sudo yum install jq | ||
</div> | </div> | ||
Line 16: | Line 17: | ||
</div> | </div> | ||
</div> | </div> | ||
+ | |||
=Användning= | =Användning= | ||
Skaffa lite exempel JSON via Hackernets API där vi söker på alla sidor som innehåller ordet Cisco: | Skaffa lite exempel JSON via Hackernets API där vi söker på alla sidor som innehåller ordet Cisco: | ||
Line 31: | Line 33: | ||
=Tips'N'Tricks= | =Tips'N'Tricks= | ||
Använd [https://jqplay.org/ jqplay] för att enkelt skriva jq filter. | Använd [https://jqplay.org/ jqplay] för att enkelt skriva jq filter. | ||
+ | |||
+ | [[Category:Guider]] |
Latest revision as of 21:21, 2 May 2019
jq är en command-line JSON parser. Som kan användas precis lika enkelt som sed,awk och grep används för text.
Installation
Börja med att installera EPEL repot
yum install epel-release
Kör sedan:
sudo yum install jq
sudo apt-get install jq
Användning
Skaffa lite exempel JSON via Hackernets API där vi söker på alla sidor som innehåller ordet Cisco:
curl 'https://hackernet.se/api.php?action=query&list=search&srsearch=cisco&format=json'
Pretty-printa JSON koden så den blir läsbar:
curl 'https://hackernet.se/api.php?action=query&list=search&srsearch=cisco&format=json' | jq '.'
Filtrera ut vilka sidor du hitta:
curl 'https://hackernet.se/api.php?action=query&list=search&srsearch=cisco&format=json' | jq '.query.search[].title'
Filtrera ut titeln och exempel texten från sidan:
curl 'https://hackernet.se/api.php?action=query&list=search&srsearch=cisco&format=json' | jq '.query.search[] | {titel: .title, text: .snippet}'
Sortera sidorna efter lägst antal ord:
curl 'https://hackernet.se/api.php?action=query&list=search&srsearch=cisco&format=json' | jq '.query.search | sort_by(.wordcount) | .[].title'
Skapa en URL till varje sida:
curl 'https://hackernet.se/api.php?action=query&list=search&srsearch=cisco&format=json' | jq '.query.search[] | ("https://hackernet.se/w/"+""+.title)'
Tips'N'Tricks
Använd jqplay för att enkelt skriva jq filter.