কমান্ড লাইন ইউটিলিটিগুলি ব্যবহার করে ইউএনআইএক্সে এক্সএমএল, জেএসএন এবং আরও নতুন ডেটা ফাইল ফর্ম্যাটগুলি পার্সিং করা হচ্ছে


9

ইউনিক্স এনভায়রনমেন্টে বিভিন্ন ফর্মের পাঠ্য পার্স করার জন্য কিছু দুর্দান্ত সরঞ্জাম রয়েছে। যাইহোক, দেরীতে, ডেটাটি theতিহ্যবাহী (historicalতিহাসিক) ফর্ম্যাটগুলিতে নেই (সিএসভি, টিএসভি, রেকর্ড-ভিত্তিক বা অন্য কিছু ডিলিমিটার-ভিত্তিক) এটি আগে ব্যবহৃত হত। এই দিনগুলির ডেটা এক্সএমএল / জেএসওনের মতো কাঠামোগত বিন্যাসে বিনিময় হয়।

আমি জানি কিছু ভাল সরঞ্জাম আছে যেমন সেড, অজক এবং পার্ল যা এখানে প্রায় কোনও ফর্মের ডেটা চিবিয়ে দিতে পারে। যাইহোক, এই ধরণের কাঠামোগত ডেটা নিয়ে কাজ করার জন্য, প্রায়শই একটি সম্পূর্ণ প্রোগ্রাম লিখতে হয় এবং তথ্য আহরণের জন্য খুব সামান্য সময় দেওয়ার পরে একজনকে বসে বসে কী জিজ্ঞাসা করতে চান এবং তার সম্পূর্ণ যুক্তি খুঁজে বের করতে হয় এটি প্রোগ্রামক্রমে নিচে। কখনও কখনও এটি ঠিক হয় না - মূলত কারণ এই ফাইলগুলি থেকে প্রাপ্ত তথ্যগুলি আরও কাজের জন্য ইনপুট হিসাবে কাজ করে; এছাড়াও উপযুক্ত সমাধান অনুসন্ধান করতে এবং এটি কোড আপ করার জন্য সময় লাগে। ডেটা অনুসন্ধান, অনুসন্ধান এবং ডাম্প করার জন্য পর্যাপ্ত সুইচগুলির সাথে একটি কমান্ড লাইন সরঞ্জামের প্রয়োজন।

আমি এমন সরঞ্জামগুলির সন্ধান করছি যা একটি এক্সএমএল / জেএসওএন বা কাঠামোগত ডেটার অন্যান্য ফর্ম নেয় এবং এটিকে সিএসভি ইত্যাদির মতো অন্যান্য ফর্ম্যাটে ফেলে দেয়, যাতে সেখান থেকে যে কোনও তথ্য বের করার জন্য অন্য কমান্ড ব্যবহার করতে পারে।

আপনি কি জানেন যে কোন কমান্ড লাইনের ইউটিলিটিগুলি এই জাতীয় কাজ করে? এর জন্য কি ইতিমধ্যে বিশ্রী / পার্ল স্ক্রিপ্ট উপলব্ধ?

উত্তর:


5

এক্সএমএল এর জন্য রয়েছে http://xMLstar.sourceforge.net/

এক্সএমএলস্টারলেট হ'ল কমান্ড লাইন ইউটিলিটিস (সরঞ্জামসমূহ) এর একটি সেট যা এক্সএমএল ডকুমেন্টস এবং ফাইলগুলিকে সাধারণ শেল কমান্ড ব্যবহার করে একইভাবে ইউএনআইএক্স গ্রেপ, সেড, awk, diff, প্যাচ, যোগদান, ইত্যাদি কমান্ড।

আপনি xsltprocএকই জাতীয় সরঞ্জাম ( saxon) ব্যবহার করতে পারেন ।

জসনের জন্য: আমি কেবল অজগর, রুবি, পার্ল ব্যবহার করে এটি রূপান্তর করা আরও ভাল বলে মনে করি।


jqশেলটিতে JSON পার্স করার জন্য একটি ভাল সরঞ্জাম: স্টেদোলান.github.io/jq
কুসালানন্দ

4

আমার ধারণা পার্ল, পাইথন বা রুবি মডিউলগুলি এর জন্য সফলভাবে ব্যবহার করা যেতে পারে। এবং এর যে কোনওটি স্ক্রিপ্টিংয়ের জন্য ব্যবহার করা যেতে পারে।


আমার পুরো বিষয়টিটি ছিল স্ক্রিপ্ট লেখা এড়ানো এবং পরিবর্তে একটি আদেশ ব্যবহার করে এটি করার চেষ্টা করা। স্ক্রিপ্ট লেখা এই প্রশ্নের পুরো উদ্দেশ্যকে পরাস্ত করবে।
কমল

আপনি কি ruby -e 'program text'"স্ক্রিপ্ট লেখার" কথা বিবেচনা করেন ?
অ্যালেক্স

আমি মনে করি আমি আপনাকে সঠিকভাবে বুঝতে পারি নি। আমি কোথায় 'প্রোগ্রাম পাঠ্য' পেতে পারি?
কমল

@ কমল: ডুনো গুগল? আপনার পছন্দের স্ক্রিপ্টিং ভাষার জন্য ডকস? আপনি পার্ল ব্যবহার করছেন কিনা তা সিপিএএন মাথায় আসে।
অ্যালেক্স

@ কমল: ডেটা ফর্ম্যাটটি আরও পরিশীলিত হয়ে ওঠার জন্য ক্রিয়াকলাপগুলির বিবরণ দীর্ঘতর হতে পারে। উদাহরণস্বরূপ, perl -0777 -MJSON -e '$t=from_json(<STDIN>); do_something_with($t)'আপনি JSONকে ন্যূনতম গোলযোগ সহ প্রক্রিয়া করতে দিন। আপনাকে এখনও কোনওভাবে ডেটা দিয়ে কী করতে হবে তা কম্পিউটারকে বলতে হবে।
গিলস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.