কীভাবে কার্যকরভাবে fx, একটি কমান্ড লাইন JSON ম্যানিপুলেশন সরঞ্জাম ব্যবহার করবেন তা শিখুন

fx জেএসএন হেরফেরের জন্য একটি জনপ্রিয় কমান্ড লাইন সরঞ্জাম। এটি এনএমপি এর মাধ্যমে স্ট্যান্ডসোনাল বাইনারি হিসাবে ইনস্টল, ব্রিউড বা ডাউনলোড করা যেতে পারে।

এনএমপি আই-জি এফএক্স

এফএক্স কার্ল কমান্ডের সাহায্যে খুব কার্যকর। আপনার যদি এমন একটি এপিআই থাকে যা জেএসএনকে ফেরত দেয় এবং আপনি কাঠামোটিতে ডুব দিতে চান বা কেবল এটি দেখতে চান, JSON কে fx এ পাইপ করুন।

কার্লস https://swapi.co/api/planets/ | fx

জেএসএন দিয়ে শুরু করতে fx এর একটি খুব স্পষ্ট ইন্টারেক্টিভ মোড রয়েছে।

আপনি JSON এর মাধ্যমে মাউস বা তীর কীগুলির সাহায্যে নেভিগেট করতে পারেন। fx ভাঁজ সমর্থন করে, এটি প্রসারিত করতে একটি বাক্সে ক্লিক করুন বা এটি প্রসারিত করতে ডান তীর টিপুন। পুনরাবৃত্তভাবে সমস্ত ক্ষেত্র প্রসারিত করতে ই কী টিপুন। শিফট + ই টিপুন এবং সমস্ত কিছু ফিরে যেতে collapse

ইন্টারেক্টিভ খননকারক

ইন্টারেক্টিভ মোডে, টিপুন। (পিরিয়ড) বোতাম আপনার টার্মিনাল উইন্ডোর শেষে, আপনি জেএসএন ক্ষেত্র সহ পপ-আপ উইন্ডো সহ একটি কার্সার দেখতে পাবেন। একটি ক্ষেত্র নির্বাচন করতে এন্টার কীগুলি ব্যবহার করুন এবং এন্টার টিপুন। আপনার প্রয়োজনীয় ডেটা না পাওয়া পর্যন্ত চালিয়ে যান। আপনার যদি একটি স্তর ফিরে যেতে হয় তবে পাথের শেষ অংশটি মুছতে Ctrl + w টিপুন। এই কমান্ডটি ঠিক পাশের শেষ অংশটি সরিয়ে দেয়। বা [বন্ধনী আবার শুরু করতে Ctrl + u টিপুন।

যাইহোক, আপনি এই ক্ষেত্রটিতে যে কোনও জাভাস্ক্রিপ্ট এক্সপ্রেশন লিখতে পারেন, কেবল পথের অভিব্যক্তি নয়।

বেশ মুদ্রণ

কখনও কখনও আপনার ইন্টারেক্টিভ খনকের প্রয়োজন হয় না এবং স্টডআউটে যাওয়ার জন্য আপনি JSON প্রিন্ট আউট করতে চান। এটি যোগ করে করা যেতে পারে। Fx কমান্ড যুক্তি।

কার্লস https://swapi.co/api/planets/1/ | | fx।

অথবা আপনি JSON এর অংশটি মুদ্রণ করতে চান সেই পথটি নির্দিষ্ট করুন।

কার্লস https://swapi.co/api/planets/1/ | | fx। ফিল্ম

একটি এপিআই অনুরোধ করা প্রতিটি সময় সময় সাপেক্ষ। যদি আমরা তাদের প্রথমে একটি হার্ড ড্রাইভে সংরক্ষণ করি?

লুরি https://swapi.co/api/planets/1/> ডেটা.জসন

এখন আমরা ফাইলটিকে প্রথম যুক্তি হিসাবে fx এ পাস করতে পারি।

fx ডেটা.জসন। ফিল্মস

Fx- তে কোনও যুক্তি জাভাস্ক্রিপ্ট ফাংশন হতে পারে। আসুন একটি .fxrc ফাইল তৈরি করুন যাতে আমরা পুনরায় ব্যবহারের জন্য দরকারী ফাংশন এবং স্নিপেট সরবরাহ করি।

স্নিপেটস

কমান্ড লাইনে লোডাশের শক্তি যুক্ত করা যাক। বিশ্বব্যাপী লোড্যাশ ইনস্টল করুন।

এনএমপি আই-জি লোডাশ

আপনার হোম ডিরেক্টরিতে একটি .fxrc ফাইল তৈরি করুন। এবং এটি পরবর্তী লাইন রাখুন।

অবজেক্ট.সেসাইন (গ্লোবাল, প্রয়োজন ('লোডাশ / এফপি'))

এখন আপনি _ উপসর্গ ছাড়াই সমস্ত লোডাশ পদ্ধতিতে কল করতে পারেন। উদাহরণস্বরূপ, সাম্প্রতিক সময়ে কে প্রতিক্রিয়া জানাতে প্রতিশ্রুতিবদ্ধ হয়েছে তা একবার দেখুন:

curl 'https://api.github.com/repos/facebook/react/commits' \ | fx 'groupBy ("comm.author.name")' 'ম্যাপভ্যালু (আকার)' \ টু পেয়ারস 'বাছাই করুন (1)' পেয়ার থেকে 'রিভার্স' নিন (10) '

আসুন প্রতিশ্রুতিবদ্ধ বার্তাগুলিতে বিভিন্ন শব্দের ব্যবহার গণনা করা যাক।

curl 'https://api.github.com/repos/facebook/react/commits' \ | fx 'মানচিত্র ("কমিট। ম্যাসেজ") "" মানচিত্র (শব্দ)' সমতল 'map' মানচিত্র (লোয়ার কেস) '' গোষ্ঠী দ্বারা (পরিচয়) '' মানচিত্রভেলিজ (আকার) '\ টু পেয়ারস' বাছাই করুন (1) 'বিপরীত' নিন (30) 'জোড় থেকে

আপনার নিজের স্নিপেট যুক্ত করুন

এটা খুব সহজ। উদাহরণস্বরূপ, আমার কাছে এমন একটি এপিআই রয়েছে যা বেস 64 নথিভুক্ত হতে পারে requires আসুন দেখুন কিভাবে এটি করতে হয়।

একটি ভূমিকা তৈরি করুন এবং বিশ্বব্যাপী এটি নির্ধারণ করুন। উদাহরণস্বরূপ একটি বেস 64 স্নিপেট।

গ্লোবাল.বাজ >৪ = টিআর => বাফার.ফর্ম (স্ট্র)

এখন আমি নিম্নলিখিতগুলি করতে পারি:

fx data.json '{মান: বেস64 (JSON.stringify (এটি))}' | Rugেউখেলান-এক্স পোস্ট

বা পৃথক ফাংশনগুলিতে ভাগ করা থাকলে:

fx data.json JSON.stringify বেস 64 '{মান: এই}' | Rugেউখেলান-এক্স পোস্ট

সরাসরি সম্পাদনা করুন

Fx এর সাহায্যে আপনি স্প্রেড অপারেটরটি ব্যবহার করে সহজেই JSON অবজেক্টগুলি পরিবর্তন করতে পারেন।

প্রতিধ্বনি 'count "গণনা": 0}' | fx '{... এটি গণনা করুন: এই কোডটি +1}'

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

fx ডেটা.জসন '{... এটি গণনা: this.count + 1}'> ডেটা.জসন

এটি সমস্ত কমান্ড লাইনে প্রযোজ্য। উদাহরণস্বরূপ, সেডের জায়গায় সেড -i সম্পাদনার জন্য একটি বিশেষ পতাকা রয়েছে। আসুন এই বৈশিষ্ট্যটি যুক্ত করুন।

গ্লোবাল.স্যাভ = জসন => (প্রয়োজন ('এফএস')

এবং এখন আমরা কেবল সংরক্ষণ কল করতে পারি:

fx data.json '{... এটি গণনা: 1}'

এমনকি পরিবর্তিত ক্ষেত্রটিকে ডিস্কে সংরক্ষণের সময় আমরা আউটপুটও করতে পারি।

fx ডেটা.জসন '{... এটি, গণনা করুন: এই কোডসেন্ট +1 save' সংরক্ষণ করুন c

এক্সার্গস ব্যবহার করুন

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

গ্লোবাল.লিস্ট = জসন => (json.forEach (x => কনসোল.লগ (এক্স)), অপরিবর্তিত)

ডিফল্টরূপে, স্টার্ডার অনির্ধারিত মুদ্রিত হয়, যাতে আমাদের পাইপগুলি প্রভাবিত না হয়।

কার্লস https://swapi.co/api/planets/1/ | | fx। ফিল্ম তালিকা | জার্গের কার্ল

JSON সন্ধান করুন

fx ইন্টারেক্টিভ JSON অনুসন্ধান সমর্থন করে। আপনি যে প্যাটার্নটি সন্ধান করতে চান তা প্রবেশ করতে / টিপুন।

পরবর্তী প্যাটার্ন ম্যাচে এড়াতে, n টিপুন আপনি এর সাথে ফিল্টার প্রয়োগ করতে পারেন। এছাড়াও। fx একই সাথে উভয়ের সাথে দুর্দান্ত কাজ করে।

তবে আমরা যদি কিছু আলাদা চাই?

আমি মনে করি JSON (জাভাস্ক্রিপ্ট অবজেক্ট নোটেশনের সংক্ষিপ্ত রূপ) এর সাথে কাজ করার জন্য জাভাস্ক্রিপ্ট সেরা ভাষা। আমরা কোথায় কোনও প্যাটার্নের সমস্ত উপস্থিতি খুঁজে বের করতে এবং স্টাডাউটে মুদ্রণ করতে চাই? আমরা আমাদের নিজস্ব স্নিপেট তৈরি করতে পারি। সুতরাং আসুন একটি অনুসন্ধান স্নিপেট তৈরি করা যাক।

এখন আমরা আমাদের JSON পুনরাবৃত্তভাবে অনুসন্ধান করতে পারি!

fx তথ্য.জসন '(/ ফিক্স / আমি) সন্ধান করুন'

এবং আরও ভাল, আগের স্নিপেট তালিকা আপনাকে পাওয়া যায় এমন অংশগুলি মুদ্রণ করতে দেয়।

fx data.json 'find (/ fix / i)' তালিকা | xargs -L1 fx data.json

স্ট্রিমিং

fx জেএসওএন স্ট্রিমিং সমর্থন করে। আপনি এটি লগ ইত্যাদির বিশ্লেষণ করতে ব্যবহার করতে পারেন etc.

কুবেটেল লগ ... | fx। মেসেজ

নির্বাচনের সাথে ইউটিলিটির উপরি-সেট করে আপনি যে বার্তাগুলি চান তা নির্বাচন করুন (বা ফিল্টার করুন)।

কুবেটেল লগ ... | fx 'নির্বাচন (x => x.level == "তথ্য")' .ম্যাসেজ

অথবা কেবলমাত্র কয়েকটি জেএসওএন ফাইলকে বিড়াল এবং পাইপ এফএক্স থেকে সন্নিবেশিত করুন।

বিড়াল * .জেসন | fx। দৈর্ঘ্য

সমর্থন থিম

fx থিমগুলি সমর্থন করে। আপনি রঙ এবং ইন্ডেন্টেশন পরিবর্তন করতে পারেন।

গ্লোবাল.এফএক্সপিআইইএল_এসপিএসি = 4

এফএক্সের জন্য দুটি দুর্দান্ত থিম নীচে রয়েছে:

  • এফএক্স-থিম-মনোোকাই - মনোোকাই থিম
  • এফএক্স-থিম-নাইট - নাইট থিম

আমি আশা করি আপনি এফএক্স উপভোগ করবেন!

আপনি যদি আমার কাজটি পছন্দ করেন তবে আপনি প্যাট্রিয়নে আমাকে সমর্থন করতে পারেন। এবং আমাকে গিটহাবে অনুসরণ করুন।