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