我的JSON對象(超過12000行)一個大文件看起來像名稱:分裂一個大的JSON文件和設置輸出文件
{
"System": "2334",
"Id": "AP64531346-2016055553824",
"dtis": "106165099",
"Type": "Up",
... (in total, 112 lines per record)
}
{
"System": "873",
"Id": "AP24531346-20160676553824",
"dtis": "1261699",
"Type": "Up",
... (in total, 112 lines per record)
}
我要拆小的大文件每一個文件夾都有一個入口(112行),並將每個片段的名稱設置爲「Id」的值,我的意思分別是例如AP64531346-2016055553824.txt和AP24531346-20160676553824。
我嘗試過使用GNU Split,但是我無法將每個文件的名稱設置爲ID加上.txt。
split -l 112 ../bigfile.csv
有什麼建議嗎?
請注意,這將導致數據中的鍵以不同於原來的順序出現。如果數據實際上與描述相同,則可能比'$/=「\ n}更好\ n」; while(my $ record = <>){my $ id = $ json-> decode($ record) - > {Id};打開(我的$ fh,...)或死亡;打印$ fh $記錄}'(僅在錯誤檢查時) – ysth
@ysth,正確,但按鍵順序在JSON中沒有意義。至於評論的其餘部分,你爲什麼不把它作爲答案發布? – ikegami
與您的看起來有點太不一樣 – ysth