busyboxでJSONを解析するためのシェルスクリプトはどこにありますか?

busyboxでJSONを解析するためのシェルスクリプトはどこにありますか?

armv5tejlアーキテクチャを備えたIPカメラがあります。そこにbusyboxがあります。カールからJSON応答を解析できる必要があります。問題は、
jq、jshon、jsawkなどのプログラムがないことです。
このアーキテクチャにはインストールが困難です。 JSONオブジェクトとJSON配列を解析できるいくつかのシェルスクリプトを見つける必要があります。

このスクリプトが見つかったら表示してください。

答え1

ashやbashを持っているので使えますjson.sh。 awkを持っているので使えますjson.awk

答え2

Grochmarが言ったように。かなり良いjqがありますが、コンパイルできません。
私達はまた利用できますJSON.awkjsonを解析します(非常に便利ではありませんが実行可能です)。例:

echo -e jsonFile | awk -f JSON.awk

必要なキーと値を取得するには、出力をgrepできます。はい(Googleドライブフォルダを使用してjsonレスポンスを解析してフォルダのすべてのIDを見つける):

echo -e jsonResponse | awk -f JSON.awk | egrep '\["items",[0-9]+,"id"\]' 

答え3

もちろん、2023年現在(外部プログラムをインストールできない場合)、busyboxでjsonを解析する最善の方法は、次の機能を使用することです。JSON.sh

カールが大きくて複雑なjson(80kb以上)を返すと、解析は非常に遅くなりますが、より速くするために努力しています...興味がある場合は、github.comプロジェクトに従います。

この記事は何年も経っているため、2023年に長い検索と多くのテストの最後に、より良いbash専用のjson解析ライブラリ(ほぼすべての奇妙なケースを処理できる)が見つからなかったことを確認するために今日公開します。文字、文字列...カールの応答でこれに会うことができます。これはjson形式の文字列です。したがって、ほとんどすべての場合で動作します。

関連情報