我不明白,什麼時候可以省略點表達式。允許在jq中省略點過濾器嗎?
是可能的原始輸入的每一行轉換爲JSON字符串:
$ echo -e "a\nb" | jq -Rc .
"a"
"b"
在那個例子中它沒有什麼區別,當點表達丟失:
$ echo -e "a\nb" | jq -Rc
"a"
"b"
接下來,我可以讀取第一個jq
的輸出並將其輸入到一個陣列中:
$ echo -e "a\nb" | jq -Rc . | jq -sc .
["a","b"]
這也沒什麼區別,當我省略了點表達:
$ echo -e "a\nb" | jq -Rc . | jq -sc
["a","b"]
但是,當我省略這兩個點表現,我得到一個用法錯誤和一個空的數組作爲結果:
$ echo -e "a\nb" | jq -Rc | jq -sc
jq - commandline JSON processor [version 1.5]
Usage: jq [options] <jq filter> [file...]
...
[]
爲什麼?
這是一個錯誤,也是我的第一個想法。但我不熟悉'jq',所以我問。也許有一些神奇的感覺。但從我到目前爲止所讀的內容來看,我也找不到任何意義。 – ceving