2016-04-29 61 views
-1

我有一個包含許多子目錄和幾十個JSON文件的目錄。此時,當我需要更改某個特定鍵的值時,這非常耗時。如果我想要一次性更改所有這些文件上給定鍵的字符串值,可以在BASH中完成嗎?如果不是shell腳本,比使用python,ruby或某種腳本語言?此外,是否有任何預先存在的工具來進行批處理編輯?使用BASH /腳本語言批量處理JSON文件的目錄/?

回答

1

Bash只是不適合編輯JSONs - 你可能需要使用正則表達式,並且使用JSON的正則表達式很愚蠢(尤其是考慮到Bash正則表達式非常有限)。諸如sed或awk之類的工具也一樣。 Python,Ruby和Perl可以提取信息並編輯JSON,但是使用它們與命令行進行手動一次編輯相當無效(但比Bash要少得多)。

我相信你要找的是一個命令行工具jq,它只是爲了你所描述的目的而做的。檢出its tutorial