में मैं जैसेरिकर्सिव बिल्ली सभी एकल फाइल
data\A\A\A\json1.json
data\A\A\A\json2.json
data\A\A\B\json1.json
...
data\Z\Z\Z\json_x.json
फ़ोल्डर में बैठे फ़ाइलों का समूह है फ़ाइलें मैं एक एकल फाइल में सभी jsons बिल्ली करना चाहते हैं?
में मैं जैसेरिकर्सिव बिल्ली सभी एकल फाइल
data\A\A\A\json1.json
data\A\A\A\json2.json
data\A\A\B\json1.json
...
data\Z\Z\Z\json_x.json
फ़ोल्डर में बैठे फ़ाइलों का समूह है फ़ाइलें मैं एक एकल फाइल में सभी jsons बिल्ली करना चाहते हैं?
find data/ -name '*.json' -exec cat {} \; > uber.json
एक संक्षिप्त विवरण:
find <where> \
-name <file_name_pattern> \
-exec <run_cmd_on_every_hit> {} \; \
> <where_to_store>
ढूंढने के बिना: 'cat ./data/*/*/*/*.json>।/All.json' –
या' shopt-globstar' के साथ 'bash' 4 में, 'cat ./data/**/*। json'। – chepner
जब बिल्ली निर्देशिका को मुद्रित करने का प्रयास करती है तो आपको त्रुटियों से बचने के लिए "-type f" (केवल फ़ाइलें) भी जोड़नी चाहिए। –
उपयोग find
सभी JSON फ़ाइलें प्राप्त करने और उन्हें श्रेणीबद्ध करने के लिए।
find data -name '*.json' -exec cat {} + > all.json
ध्यान दें कि यह मान्य JSON नहीं होगा। यदि आप एक JSON फ़ाइल को एकाधिक ऑब्जेक्ट्स रखना चाहते हैं, तो उन्हें एक एरे या ऑब्जेक्ट में होना आवश्यक है, इसलिए आपको उनके आसपास [ ]
जोड़ना होगा और प्रत्येक के बीच ,
डालना होगा।
वैकल्पिक रूप से - आप पाइप कि xargs
को
<path to your files> | xargs cat > all.json
को हटाने के लिए फ़ाइल को संपादित करना होगा: \ pwd \ ' – Alan
परिणाम मान्य JSON नहीं होगा, आप सुनिश्चित हैं कि आप ऐसा करना चाहते हैं कर सकते हैं - आप अपनी फ़ाइलों की एक सूची है तो क्या होगा? – Barmar