2016-10-30 8 views
0

데이터 필터링과 관련하여 도움이 필요합니다. 날짜와 가격을 표시하기 위해 이들을 필터링 할 수는 있지만 사용할 수없는 데이터 만 false로 설정하면됩니다.Bash 데이터 필터링

{"outbound":{"fares":[{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-01"},{"price":{"value":39.09,"valueMainUnit":"39","valueFractionalUnit":"09","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-02"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-03"},{"price":{"value":21.24,"valueMainUnit":"21","valueFractionalUnit":"24","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-04"},{"price":{"value":18.74,"valueMainUnit":"18","valueFractionalUnit":"74","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-05"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-06"},{"price":{"value":23.24,"valueMainUnit":"23","valueFractionalUnit":"24","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-07"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-08"},{"price":{"value":32.29,"valueMainUnit":"32","valueFractionalUnit":"29","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-09"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-10"},{"price":{"value":16.99,"valueMainUnit":"16","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-11"},{"price":{"value":14.99,"valueMainUnit":"14","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-12"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-13"},{"price":{"value":9.99,"valueMainUnit":"9","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-14"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-15"},{"price":{"value":26.34,"valueMainUnit":"26","valueFractionalUnit":"34","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-16"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-17"},{"price":{"value":16.99,"valueMainUnit":"16","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-18"},{"price":{"value":9.99,"valueMainUnit":"9","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-19"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-20"},{"price":{"value":16.99,"valueMainUnit":"16","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-21"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-22"},{"price":{"value":21.24,"valueMainUnit":"21","valueFractionalUnit":"24","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-23"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-24"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-25"},{"price":{"value":21.24,"valueMainUnit":"21","valueFractionalUnit":"24","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-26"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-27"},{"price":{"value":45.99,"valueMainUnit":"45","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-28"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-29"},{"price":{"value":55.99,"valueMainUnit":"55","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-30"},{"price":null,"soldOut":false,"unavailable":true,"day":"2016-12-31"}],"minFare":{"price":{"value":9.99,"valueMainUnit":"9","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-14"},"maxFare":{"price":{"value":55.99,"valueMainUnit":"55","valueFractionalUnit":"99","currencyCode":"EUR","currencySymbol":"€"},"soldOut":false,"unavailable":false,"day":"2016-12-30"}}} 
+0

이 예상 출력의 예를 줄 수 :

가 당신의 JSON이 file.json에 위치한 가정하면, 다음은 false-unavailable이 만 day & price을 반환 fares 배열에서 모든 항목을 추출 할 것인가? – andreatsh

+2

이것은 json 파일처럼 보입니다. 파이썬이나 펄과 같은 언어를 사용하여 원하는 것을 얻을 것을 권합니다. 자신이하는 일을 알고 있다면 명령 줄에서 직접 호출 할 수 있습니다. – Abdou

답변

1

당신은 당신의 JSON 입력하면 원하는 & 쿼리를 구문 분석 jq 같은 JSON 파서를 사용할 수 있습니다

는 데이터입니다.

jq -r ". | .outbound.fares[] | select(.unavailable == false) | { day: .day, price: .price }" file.json