web-dev-qa-db-fra.com

Comment exécuter jq à partir de gitbash dans Windows?

J'ai gitbash dans Windows. J'essaie d'exécuter jq mais cela me donne une erreur.

$ ./jq-win64.exe 
jq 
parse error: Invalid numeric literal at line 2, column 0

Intention: Je veux utiliser jq pour analyser json.

6
DotNetDeveloper

En utilisant jq-win64.exe de github.com/stedolan/jq/releases , je reçois

vonc@voncav MINGW64 /d/prgs/dl
$ ./jq-win64.exe --version
jq-1.6

vonc@voncav MINGW64 /d/prgs/dl
$ echo '{"foo": 0}' | ./jq-win64.exe .
{
  "foo": 0
}

Cela fonctionne donc, mais cela dépend ensuite du document json que vous analysez avec.
Si ce document json n'est pas bien formé, cela générerait l'erreur que vous voyez.

Dans votre session bash, vous pouvez définir (ou ajouter à votre ~/.bashrc) un alias:

alias jq=/path/to/jq-win64.exe

De cette façon, vous n'avez pas besoin d'utiliser ./jq, mais directement jq.

$ echo '{"foo": 0}' | jq

Dans mon cas:

vonc@voncav:/$ alias jq=/mnt/d/dwnl/jq-win64.exe
vonc@voncav:/$ echo '{"foo": 0}' | jq
{
  "foo": 0
}
11
VonC

Je viens de télécharger le binaire sur %HOMEPATH%/bin/jq-win64 et cela a fonctionné immédiatement via jq

0
kidbrax