jq
シェルパイプラインで「正常に」動作するようには見えません。例えば:
$ curl -s https://api.github.com/users/octocat/repos | jq | cat
その結果、jq
ヘルプテキスト*が出力されます。jq
の出力をファイルにリダイレクトしようとすると、同じことが起こります。
$ curl -s https://api.github.com/users/octocat/repos | jq > /tmp/stuff.json
されjq
、それがttyから実行されていないと判断した場合、意図的に救済しますか?jq
パイプラインで使用できるように、この動作を防ぐにはどうすればよいですか?
* (この例には猫の役に立たない使い方が含まれていることに気づきました。これは説明のみを目的としています)
jq
がパイプからの読み取りと別のパイプへの書き込みの両方であることを示すための単なるプレースホルダーだと思います。の出力を単に表示したい場合はjq
、それcat
自体は不要です。