我有几个未格式化的json文件我想要"美化"所以他们更具人性化。我通常为单个文件执行的方式是:
python -m json.tool < infile > outfile
但是对于几个文件,我还没有找到一种处理它们的方法,并用新的&#34;漂亮的&#34;覆盖同一个文件。 JSON。
我最接近的是:
find ./ -type f -exec python -m json.tool {} \;
但它会将所有内容打印到标准输出,这很好但不是最佳的,具体取决于您查看的文件数量。有没有办法让上面的命令覆盖带有美化json的文件?
调用文件:message1.json,message2.json等等......
提前致谢
答案 0 :(得分: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' \;