Tôi dường như không thể jqcư xử "bình thường" trong một đường ống vỏ. Ví dụ:
$ curl -s https://api.github.com/users/octocat/repos | jq | cat
kết quả jqchỉ đơn giản là in ra văn bản trợ giúp của nó *. Điều tương tự cũng xảy ra nếu tôi cố chuyển hướng jqđầu ra của tệp sang tệp:
$ curl -s https://api.github.com/users/octocat/repos | jq > /tmp/stuff.json
Là jqcố tình bảo lãnh ra nếu nó xác định rằng nó không được chạy từ một tty? Làm thế nào tôi có thể ngăn chặn hành vi này để tôi có thể sử dụng jqtrong một đường ống dẫn?
* (Tôi nhận ra ví dụ này chứa việc sử dụng mèo vô dụng ; nó chỉ nhằm mục đích minh họa)
jqcả hai đang đọc từ một ống và viết sang một ống khác. Nếu mong muốn chỉ đơn giản là nhìn thấy đầu ra củajq, thìcatbản thân nó là không cần thiết.