명령줄 유틸리티를 사용하여 UNIX에서 XML, JSON 및 최신 데이터 파일 형식을 구문 분석합니다.

명령줄 유틸리티를 사용하여 UNIX에서 XML, JSON 및 최신 데이터 파일 형식을 구문 분석합니다.

Unix 환경에는 다양한 형태의 텍스트를 구문 분석하는 몇 가지 훌륭한 도구가 있습니다. 그러나 최근에는 데이터가 더 이상 예전처럼 전통적인(기록) 형식(CSV, TSV, 레코드 기반 또는 기타 구분 기호 기반 형식)이 아닙니다. 오늘날 데이터는 XML/JSON과 같은 구조화된 형식으로 교환됩니다.

나는 거의 모든 형태의 데이터를 처리할 수 있는 sed, awk, Perl과 같은 훌륭한 도구가 있다는 것을 알고 있습니다. 하지만 이런 구조화된 데이터를 처리하려면 대개 전체 프로그램을 작성해야 하고, 정보를 추출하는 데 시간이 너무 부족하기 때문에 앉아서 쿼리하고 싶은 내용의 전체 로직을 파악하고 넣어야 합니다. 프로그래밍 방식으로 꺼집니다. 때로는 이것이 가능하지 않습니다. 주로 이러한 파일에서 추출된 정보가 추가 작업을 위한 입력으로 사용되기 때문이지만 적절한 솔루션을 검색하고 인코딩하는 데 시간이 걸리기 때문입니다. 데이터를 찾고, 쿼리하고, 덤프하려면 충분한 스위치가 있는 명령줄 도구가 필요합니다.

저는 XML/JSON 또는 다른 형태의 구조화된 데이터를 가져와서 csv 등과 같은 다른 형식으로 덤프하여 거기에서 다른 명령을 사용하여 정보를 얻을 수 있는 도구를 찾고 있습니다.

이런 종류의 작업을 수행할 수 있는 명령줄 유틸리티가 있는지 알고 계십니까? 이미 사용 가능한 awk/Perl 스크립트가 있나요?

답변1

XML의 경우http://xmlstar.sourceforge.net/

XMLStarlet은 UNIX grep, sed, awk, diff와 동일한 방식으로 간단한 셸 명령 세트를 사용하여 XML 문서와 파일을 변환, 쿼리, 검증 및 편집하는 데 사용할 수 있는 명령줄 유틸리티(도구) 세트입니다. 패치, 가입 주문을 기다립니다.

xsltproc비슷한 도구( )를 사용할 수도 있습니다 saxon.

json의 경우: Python, Ruby, Perl을 사용하고 변환하는 것이 더 낫다고 생각합니다.

답변2

내 생각에는 Perl, Python 또는 Ruby 모듈이 이러한 목적에 성공적으로 사용될 수 있다고 생각합니다. 이들 중 하나를 스크립팅에 사용할 수 있습니다.

관련 정보