Fish Shell:
CSV এর সাথে কাজ করা
কিভাবে:
ফিশ শেল, নিজে থেকেই, CSV ম্যানিপুলেশনের জন্য নিজস্ব ফাংশন সমৃদ্ধ নয়। তবে, আপনি awk, sed, এবং cut এর মতো ইউনিক্স ইউটিলিটিগুলো ব্যবহার করে মৌলিক অপারেশনগুলি করতে পারেন অথবা csvkit এর মতো বিশেষায়িত টুলস ব্যবহার করতে পারেন আরো উন্নত কাজের জন্য।
একটি CSV ফাইল পড়া এবং প্রথম কলাম প্রিন্ট করা:
প্রথম কলাম নির্বাচনের জন্য cut ব্যবহার করা:
cut -d ',' -f1 data.csvনমুনা আউটপুট:
নাম
অ্যালিস
ববকলামের মানের উপর ভিত্তি করে CSV সারি ফিল্টার করা:
দ্বিতীয় কলামে “42” ম্যাচ করা সারিগুলি খুঁজতে awk ব্যবহার করা:
awk -F, '$2 == "42" { print $0 }' data.csvনমুনা আউটপুট:
বব,42,লন্ডনএকটি CSV ফাইল মডিফাই করা (যেমন, একটি কলাম যোগ করা):
একটি স্থায়ী মান “NewColumn” সহ একটি কলাম যোগ করতে awk ব্যবহার করা:
awk -F, 'BEGIN {OFS=","} {print $0,"NewColumn"}' data.csv > modified.csvmodified.csv-এ নমুনা আউটপুট:
নাম,বয়স,শহর,নিউকলাম
অ্যালিস,30,নিউ ইয়র্ক,নিউকলাম
বব,42,লন্ডন,নিউকলামআরো উন্নত অপারেশনের জন্য csvkit ব্যবহার করা:
প্রথমে, নিশ্চিত করুন আপনি csvkit ইনস্টল করেছেন। যদি না থাকে, তাহলে pip ব্যবহার করে ইনস্টল করুন: pip install csvkit.
CSV ফাইলকে JSON-এ রূপান্তর করা:
csvjson data.csv > data.jsondata.json-এ নমুনা আউটপুট:
[{"Name":"Alice","Age":"30","City":"New York"},{"Name":"Bob","Age":"42","City":"London"}]csvkit-এর csvgrep ব্যবহারের সাথে ফিল্টারিং:
csvgrep -c 2 -m 42 data.csvএই কমান্ডটি csvkit ব্যবহার করে ফিল্টারিং টাস্ক পুনরাবৃত্তি করে, মান “42” এর জন্য দ্বিতীয় কলামে টার্গেট করে।
সংক্ষেপে, যখন ফিশ শেল নিজেই সরাসরি CSV ম্যানিপুলেশনের সুবিধা দিতে নাও পারে, তার একত্রিত ইউনিক্স ইউটিলিটিগুলির সাথে সংযোগ এবং csvkit এর মতো টুলসের উপলব্ধতা CSV ফাইল নিয়ে কাজ করার জন্য শক্তিশালী বিকল্প প্রস্তাব করে।