2017-12-28 40 views
0

필자는 사람들이 읽을 수 있도록 여러 개의 형식이 지정되지 않은 json 파일을 "선호"하고 싶습니다. 난 보통 하나의 파일을 위해 그것을 할 방법은 다음과 같습니다json-format하고 여러 파일을 덮어 쓰려면 어떻게합니까?

python -m json.tool <infile> outfile 

그러나 여러 파일을 내가 그들을 처리하고 새로운 "꽤"JSON과 같은 파일을 오버라이드 (override) 할 수있는 방법을 발견하지 않았습니다.

find ./ -type f -exec python -m json.tool {} \; 

하지만 그것을 잘 그러나 당신이보고있는 파일 수에 따라 최적이 아닌 표준 출력에 이르기까지 모든 것을 인쇄 :

는 내가 가진 가장 가까운이었다. 위의 명령을 미리 정의 된 json으로 파일을 덮어 쓰게 할 수있는 방법이 있습니까? message1.json, message2.json 등등 ... 미리

+0

https://stackoverflow.com/q/12965400/4886927에서 보자. –

+0

@pasabaporaqui : 정확한 사기꾼이라고 나는 확신 할 수 없다. OP가 자신의 파일 이름 확장자를 바꾸길 원하는지 확실하지 않습니다. 그들이 더 많은 정보를 제공 할 때 유용 할 것입니다. – Inian

+0

@israelord : 실제 파일 이름과 파일 내용을 알려주시겠습니까? 또한 확장 기능을 원본 파일에서 새 JSON으로 변경 하시겠습니까? 또는 동일한 이름을 – Inian

답변

1

에서

덕분에 시도해보십시오 :

파일은라고

find . -type f -exec sh -c 'python -m json.tool $0 > $0.pretty' {} \; 

는 자세한 설명

에 대한 https://stackoverflow.com/a/12965441/4886927에서 참조

이렇게하면 원래 파일을 새 파일로 덮어 씁니다.

find . -type f -exec sh -c 'python -m json.tool < $0 > /tmp/pretty.json && mv /tmp/pretty.json $0' \; 
+0

같은 확장명을 유지할 방법이 있습니까? – israelord

+0

@israelord : 답변 됨 업데이트 됨 –