awk 是一種文本處理工具,可以用于提取 JSON 串中的數值。
假設有一個名為 data.json 的文件,其中的 JSON 串如下: { "name": "Tom", "age": 23, "height": 175.5, "weight": 70.2, "scores": [80, 90, 95], "phone": { "type": "mobile", "number": 123456789 } } 我們可以使用 awk 命令和正則表達式來提取其中的數值。例如,我們可以提取 age 的值: $ awk -F ': ' '/"age"/{print $2}' data.json 23 其中: - -F ': ' 指定了分隔符為冒號加空格,即 ": "; - /"age"/ 指定了匹配模式為雙引號加 age 加雙引號,即 "age"; - {print $2} 指定了輸出第二個字段,就是 age 的值。 同樣地,我們可以提取其他的數值: $ awk -F ': ' '/"height"/{print $2}' data.json 175.5 $ awk -F ': ' '/"weight"/{print $2}' data.json 70.2 $ awk -F ': ' '/"scores"/{print $2}' data.json [80, 90, 95] $ awk -F ': ' '/"number"/{print $2}' data.json 123456789
從上面的例子可以看出,awk 命令可以方便地提取 JSON 串中的數值。需要注意的是,如果要提取的值是數組或對象,需要對其進行進一步的處理。