1. 程式人生 > >Shell_Shell 程式設計 (持續更新) 提取JSON 中指定欄位的值

Shell_Shell 程式設計 (持續更新) 提取JSON 中指定欄位的值

在平時工作中,我們有時候需要對JSON 的某一個欄位進行提取,

樣例資料 :

{"a1":22,"a2":"23"}
{"a2":"23","a1":2233,a3:"22"}
 

可以使用 grep 完成功能:

grep -Po 'test[" :]+\K[^"]+'  example.txt 

其中: 

P, --perl-regexp

      Interpret PATTERN as a Perl regular expression.  This is highly experimental and grep -P may warn of  nimplemented features.

test  : 為待提取的欄位名
example.txt  : 需要處理的json檔案

Tips:

1.此種方法只能適用於 簡單型別的提取,並且資料是字串型別,也就是  " "  (雙引號)括起來 的資料 , a1欄位 不滿足要求

提取 a2 , 可行 

[[email protected] test]$ cat test.txt | grep -Po 'a2[" :]+\K[^"]+'
23
23

提取a1, 不可行

[[email protected] test]$ cat test.txt | grep -Po 'a1[" :]+\K[^"]+'
22,
2233,a3:

----------------   未完待續    -------------

相關推薦

Shell_Shell 程式設計 持續更新 提取JSON 指定

在平時工作中,我們有時候需要對JSON 的某一個欄位進行提取, 樣例資料 : {"a1":22,"a2":"23"} {"a2":"23","a1":2233,a3:"22"}   可以使用 grep 完成功能: grep -Po 'test[" :]+\K[

如何提取header指定

1.需要提取的檔案內容 Request url: appv2.qichacha.net/app/v1/extras/getVersion?platform=android&version=11.3.0&timestamp=1543816102814&sign=dd

程式設計書籍分享持續更新....

本頁面分享IT技術書籍,所有的書籍均是完整的pdf,所有書籍都有看過(大部分沒看完),都是我認為非常不錯的書籍,分享給大家,放在csdn下載。下載積分都設定為1(csdn現在沒辦法設定成不用積分下載),但如果下載人數太多,csdn會自動把積分調高,如果沒有積分的可以在下方留email,我會盡

牢記android程式設計不能犯的低階錯誤,其他同理持續更新

1.舉例呼叫一個方法時候,如果方法中的引數有控制元件之類的賦值時候(比如動態設定圖片或文字)一定要在方法裡面判斷是否為空,不然極有可能出現空指標異常等。正確程式碼如下: public void setToolBar(String title, ImageView image

c++c語言程式設計過程遇到的細微問題總結持續更新

1.char*指標訪問元素的問題 對於char *型變數,遍歷訪問該變數的每一個元素時,會發生錯誤。 例如: char * str="01010101"; for(int i=0;i<str

C++ 程式設計技巧筆記記錄持續更新

目錄 類/物件 1.多型基類的解構函式應總是public virtual,否則應為protected 2.編譯器會隱式生成預設構造,複製構造,複製賦值,析構,(C++11)移動構造,(C++11)移動賦值的inline函式

input輸入限制持續更新

pan only bmi pbo length 讀文本 num tom clipboard 1.只讀文本框內容 <!-- 在input裏添加屬性值 readonly --> <input type="text" value="" readonly&g

struts2學習筆記——常見報錯及解決方法匯總持續更新

允許 clip 之間 con ack 技術 ext tro height 操作環境:(1)Tomcat 7.0.72.0      (2)OS Name: Windows 7      (3)JVM Version: 1.8.0_25-b18      (4)e

ScvQ常用的網站持續更新...

sta https tac cto stack 開源中國 更新 title com GitHub:     https://github.com/ScvQ 開源中國:     http://git.oschina.net/ScvQ 博客園:     http://www.c

FPGA設計思想持續更新

流水線 切割 下一個 logs 學習 altera uart lte 問題 一、 流水線設計   將原本一個時鐘周期完成的較大的組合邏輯通過合理的切割後分由多個時鐘周期完成。該部分邏輯運行的時鐘頻率會有明顯對的提升,提高系統的性能用面積換速度   一個流水線設計需要4個步驟

python類相關總結持續更新

屬於 模塊 error pan 類成員 pro 相關 ror __str__ __init__   構造函數 __dict__   vars()函數,獲取命名空間裏面的名稱 __str__   str()函數,輸出成員相關信息的內容 __repr__   repl()函數,

Java學習軌跡【面向對象】持續更新

一個 調用構造 用法 可見 返回 java編譯 ted 條件 targe 其中部分內容為其他博主所作,侵刪 6月12日-7月每日更新 Java學習軌跡 一、面向對象 類和對象 1. new關鍵字所完成的事情 1)為對象開辟了新的內存空間 2)調用類的構造方法 3)返回生成對

git常用命令持續更新

git pull java com mit res mail dsa 切換 設置 1、設置用戶名和郵箱: git config --global user.name ""; git config --global user.email ""; git config --li

重構函數基本原則持續更新

一段 更新 設置 內部類 重構 修改 一個 變化 但是 1. 重構函數時一定要查清有哪些類調用了該函數 修改函數之前要明白函數每一段代碼的作用再做修改(所以體積小的函數好改啊),我就遇到過這樣的問題,修改函數內部有某個常量,但是該常量對於另外一個調用該函數的類來

七日成蝶課程一覽持續更新

七日成蝶 c語言 c++ thinkphp5 flashcs6 nginx php mysql openldap ssl apache tomcat本文列出了七日成蝶所有課程的鏈接,並會隨時更新,敬請關註。所有課程主頁:http://edu.51cto.com/lecturer/8403723.html七日成

python+mysql+flask創建一個微博應用持續更新

會話 pen 個人 數據庫管理 用戶角色 啟動 ini view 開啟 微博應用的結構: 用戶管理,包括登錄管理,會話,用戶角色,個人檔案及用戶頭像。 數據庫管理,包括數據庫遷移處理。 Web表單支持,包括字段檢驗和用於防止垃圾郵件的驗證碼功能。 大數據的分頁功能。 全文

tensorflow安裝調試總結持續更新

做的 更新 但我 secure 軟件 tar -o cal ipconfig 這段時間需要部署tensorflow到linux上,由於堡壘機不能連外網,所以pip、apt-get、wget、git統統不能用,然後就是各種調試了,下面整理了一些遇到的問題和解決方案,供大家參考

常用模板持續更新

ati make size one inf 最短路 返回 01背包 方便 總結一下常用的模板,方便自己使用。 1.最大公約數(歐幾裏得)和最小公倍數 1 typedef long long LL; 2 3 LL gcd(LL a,LL b){ 4 r

Security Traps 玩耍劇透持續更新

一個 security 響應 http oss bsp 題目 targe base64 發現了一個有意思的網站 http://securitytraps.pl 類似CTF模式的解謎,連註冊都要先做五題。。。 註冊遇到的題目 1. "Blockade" 提示:源碼 2.

HttpSession的一點總結持續更新

ida https 服務器 一點 生命周期 max false ssi ive 1.HttpSessio的生命周期 1).什麽時候創建HttpSession對象 JSP:若當前的JSP是客戶端訪問的WEB應用的第一個資源,且JSP的page指定的session屬性為fal