Difference between revisions of "JQ"

From HackerNet
Jump to: navigation, search
(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...")
 
m (Sparco moved page Jq to JQ without leaving a redirect)
 
(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">
Krävs att du har EPEL repot aktiverat.
+
{{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.