반응형
jq - 다음을 포함하지 않는 json을 필터링하는 방법
필터링할 aws 쿼리가 있습니다.jq
다 필터링하고 싶어요imageTags
'마음'으로 끝나지 않는
지금까지 이렇게 했는데 '최신'이 포함된 것을 필터링하고 '최신'이 포함되지 않은 것(또는 '최신'으로 끝나지 않은 것)을 필터링합니다.
aws ecr describe-images --repository-name <repo> --output json | jq '.[]' | jq '.[]' | jq "select ((.imagePushedAt < 14893094695) and (.imageTags[] | contains(\"latest\")))"
감사해요.
사용할 수 있습니다.not
논리를 뒤집다
(.imageTags[] | contains(\"latest\") | not)
또한, 파이프라인을 하나의 솔루션으로 단순화할 수 있습니다.jq
불러.
네가 해야 할 일은| not
의 범위 내에서jq
특히 mac의 경우 유용한 예brew
사용자:
모든 병용 조제식 나열
JSON을 조회하여 출력을 해석함으로써
brew info --json=v1 --installed | jq -r 'map(
select(.installed[].poured_from_bottle)|.name) | unique | .[]' | tr '\n' ' '
병에 담지 않은 모든 공식 나열
JSON을 쿼리하고 출력을 해석하여| not
brew info --json=v1 --installed | jq -r 'map(
select(.installed[].poured_from_bottle | not) | .name) | unique | .[]'
이 경우contains()
제대로 작동하지 않습니다.not
의index()
기능.
select(.imageTags | index("latest") | not)
이것..[] | .[]
로 단축할 수 있다.[][]
예.,
$ jq --null-input '[[1,2],[3,4]] | .[] | .[]'
1
2
3
4
$ jq --null-input '[[1,2],[3,4]] | .[][]'
1
2
3
4
문자열에 다른 문자열이 포함되어 있지 않은지 확인하려면 를 조합합니다.contains
그리고.not
예.,
$ jq --null-input '"foobar" | contains("foo") | not'
false
$ jq --null-input '"barbaz" | contains("foo") | not'
true
다음과 같은 방법으로 문자열 배열에 유사한 작업을 수행할 수 있습니다.any
또는all
예.,
$ jq --null-input '["foobar","barbaz"] | any(.[]; contains("foo"))'
true
$ jq --null-input '["foobar","barbaz"] | any(.[]; contains("qux"))'
false
$ jq --null-input '["foobar","barbaz"] | all(.[]; contains("ba"))'
true
$ jq --null-input '["foobar","barbaz"] | all(.[]; contains("qux"))'
false
파일이 있다고 합니다.json:
[ [["foo", "foo"],["foo", "bat"]]
, [["foo", "bar"],["foo", "bat"]]
, [["foo", "baz"],["foo", "bat"]]
]
또한 문자열이 없는 네스트된 어레이만 유지할 필요가 있습니다."ba"
:
$ jq --compact-output '.[][] | select(all(.[]; contains("bat") | not))' file.json
["foo","foo"]
["foo","bar"]
["foo","baz"]
언급URL : https://stackoverflow.com/questions/42746828/jq-how-to-filter-a-json-that-does-not-contain
반응형
'programing' 카테고리의 다른 글
연락처 양식 7의 자리 표시자 - Wordpress (0) | 2023.03.29 |
---|---|
mongo import를 사용하여 CSV 파일을 Import하려면 어떻게 해야 합니까? (0) | 2023.03.29 |
"Post"에서 다른 이름으로 이름 변경 (0) | 2023.03.29 |
WooCommerce 주문에 대한 지불 방법을 ID별로 확인하는 방법은 무엇입니까? (0) | 2023.03.29 |
Angular CLI에 의해 생성되는 "spec.ts" 파일은 어떤 용도로 사용됩니까? (0) | 2023.03.29 |