shell編程json,shell編程100例

本文目錄一覽:

何用shell或者python腳本格式化 json後綴名文件,並保存

import json

str = “{‘price’: 542.23, ‘name’: ‘ACME’, ‘shares’: 100}”

parsed = json.loads(str.replace(‘\”, ‘”‘))

print json.dumps(parsed, indent=4, sort_keys=True)

Linux Shell格式化Json

Linux下查看格式化輸出json

使用json在線解析可以解決問題

其實Linux下有現成的工具可以很好的顯示

1.直接以文本形式展現

輸入

回車顯示結果

2.如果json保存在文件里比如

可以使用

即可格式化查看json如圖

我們平常使用curl測試返回的數據也可以這樣格式化輸出

編寫Shell腳本

保存為文件abc.sh

比較清晰了

這也算是平時積累的小技巧

如何通過shell取得下面JSON里的數據

import net.sf.json.JSONArray;

import net.sf.json.JSONObject;

public class DoJSON {

public static void main(String[] args) {

JSONArray employees = new JSONArray(); //JSON數組

JSONObject employee = new JSONObject(); //JSON象

employee.put(“firstName”, “Bill”); //按鍵-值形式存儲數據JSON象

employee.put(“lastName”, “Gates”);

employees.add(employee); //JSON象加入JSON數組

employee.put(“firstName”, “George”);

employee.put(“lastName”, “Bush”);

employees.add(employee);

employee.put(“firstName”, “Thomas”);

employee.put(“lastName”, “Carter”);

employees.add(employee);

System.out.println(employees.toString());

for(int i=0; iemployees.size(); i++) {

JSONObject emp = employees.getJSONObject(i);

System.out.println(emp.toString());

System.out.println(“FirstName :\t” + emp.get(“firstName”));

System.out.println(“LastName : \t” + emp.get(“lastName”));

}

}

}

K

如何用shell或者python腳本格式化 json後綴名文件,並保存文件,求助

不知道你用的哪個版的python

我使用python3可以處理有中文的json文件

讀寫json文件:

首先 import json

load() loads()

dump() dumps()

一、從文件:

json轉Python數據結構:json.load

fo = open(‘data.json’, ‘r’)

data = json.load(fo)

python數據結構轉json:json.dump

fo = open(‘data.json’, ‘r’)

json.dump(data, fo)

二、python字元串和json之間互相轉換:

json_str = json.dumps(data)

data = json.loads(json_str)

三、json格式化輸出:

1、格式化列印 pprint

2、格式化輸出

在編碼JSON的時候,還有一些選項很有用。 如果你想獲得漂亮的格式化字元串後輸出,可以使用json.dumps() 的indent參數。

它會使得輸出和pprint()函數效果類似。比如:

print(json.dumps(data, indent=4))

fo = open(‘data.json’, ‘r’)

json.dump(data, fo, indent=4)

四、帶有中文的json轉換:

jsondata= json.dumps( dics, ensure_ascii = False, indent = 4 )

在dumps方法中加入參數ensure_ascii = False,可以使dic中的中文正常轉換

2、若python的數據中既有普通字元,又有Unicode字元串,上述方法則不行,還要在後面加上encode(‘utf-8’)

手動轉換成utf-8編碼

jsondata= json.dumps( dics, ensure_ascii = False, indent = 4 ).encode(‘utf-8’)

Linux Shell jq比較json是否相同

問題:shell下使用jq比較兩個json是否相等,第一個難點是KEY需要排序,第二個難點是array需要排序

Jq 本身提供-S參數使key進行排序

不過無法處理array.

jq提供了walk功能可以對所有的key進行遍歷,同時他的example1就展示了如何對array進行排序,但apt中提供的jq不具有這個功能。

在github上找到了可以在jq1.5中使用walk的方法

最後寫成了這個樣子,

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/190994.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-11-30 09:08
下一篇 2024-11-30 09:08

相關推薦

  • Shell腳本與Python腳本的區別

    本文將從多個方面對Shell腳本與Python腳本的區別做詳細的闡述。 一、語法差異 Shell腳本和Python腳本的語法存在明顯差異。 Shell腳本是一種基於字元命令行的語言…

    編程 2025-04-29
  • JSON的MD5

    在Web開發過程中,JSON(JavaScript Object Notation)是最常用的數據格式之一。MD5(Message-Digest Algorithm 5)是一種常用…

    編程 2025-04-29
  • 使用Java將JSON寫入HDFS

    本篇文章將從以下幾個方面詳細闡述Java將JSON寫入HDFS的方法: 一、HDFS簡介 首先,先來了解一下Hadoop分散式文件系統(HDFS)。HDFS是一個可擴展性高的分散式…

    編程 2025-04-29
  • Shell嵌入式介紹及應用

    本文將介紹Shell嵌入式的概念、特點和應用,並針對嵌入式系統開發中的一些問題,給出相應的解決方案。 一、Shell嵌入式概念 Shell嵌入式是一種將Shell(命令行解釋器)嵌…

    編程 2025-04-28
  • 如何使用Newtonsoft datatable轉Json

    Newtonsoft DataTable 是一個基於.NET的JSON框架,也是一個用於序列化和反序列化JSON的強大工具。 在本文中,我們將學習如何使用Newtonsoft Da…

    編程 2025-04-28
  • Python Shell保存PY文件的方法

    Python Shell是一種互動式編程環境,它能夠快速驗證代碼實現。有時,為了將代碼保存到文件中,我們需要了解如何在Python Shell中保存Python文件。本文將從多個方…

    編程 2025-04-27
  • JPRC – 輕鬆創建可讀性強的 JSON API

    本文將介紹一個全新的 JSON API 框架 JPRC,通過該框架,您可以輕鬆創建可讀性強的 JSON API,提高您的項目開發效率和代碼可維護性。接下來將從以下幾個方面對 JPR…

    編程 2025-04-27
  • Shell和Python哪個難學

    Python比Shell更難學習。 一、語法複雜度 Shell腳本是一種受眾較為廣泛的編程語言,它的語法相對於Python來說要簡單很多,很多基本的語句都只需要幾個字元就能表示出來…

    編程 2025-04-27
  • Python存為JSON的方法及實例

    本文將從以下多個方面對Python存為JSON做詳細的闡述。 一、JSON簡介 JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,易於人閱…

    編程 2025-04-27
  • 使用Python獲取JSON並解析

    本文將介紹如何使用Python獲取JSON數據並解析相關內容。通過使用Python的第三方庫,我們可以輕鬆地處理JSON數據,包括讀取、提取和操作JSON數據。 一、獲取JSON數…

    編程 2025-04-27

發表回復

登錄後才能評論