ইউনিক্স সিস্টেমগুলি কীভাবে ফাইলগুলি পরিচালনা করে সে সম্পর্কে আমি অন্তর্নিহিত উত্তর দেওয়ার চেষ্টা করব। যেমনটি অন্যরা ইঙ্গিত করেছে, আপনার প্রশ্নের বাক্যবৃত্তি বিভ্রান্তিকর কারণ ফাইলগুলি সেগুলি কী ধরণের তা জানায় না এবং কোন অ্যাপ্লিকেশনগুলি ব্যবহার করতে হবে তা কার্নেল নিজেই স্থির করে না।
ইউনিক্স এবং উইন্ডোজ অপারেটিং সিস্টেমে ফাইলগুলি কেবল বাইটের ক্রম হিসাবে কাঠামোগত হয়। তেনবাউমের অপারেটিং সিস্টেমগুলি থেকে , তৃতীয় সংস্করণ:
কার্যত, অপারেটিং সিস্টেমটি ফাইলে কী রয়েছে তা জানে না বা যত্ন করে না। এটি দেখেছে সমস্ত বাইট। কোনও অর্থ ব্যবহারকারী স্তরের প্রোগ্রাম দ্বারা আরোপিত আবশ্যক।
একারণে ডেস্কটপ পরিবেশে xdg-open
নির্দিষ্ট ফাইলের প্রকারগুলি খোলার জন্য ডিফল্ট অ্যাপ্লিকেশন নির্ধারণ করতে ব্যবহৃত হয়।
ইউনিক্স সিস্টেমে ফাইলগুলিকে নিয়মিত ফাইল এবং বিশেষ ফাইলগুলির মধ্যে পার্থক্য করা হয় । একটি নিয়মিত ফাইলটি কেবল ব্যবহারকারী ডেটা যা কোনও পাঠ্য ফাইল (এএসসিআইআই বা ইউনিকোড এনকোডিং) বা বাইনারি (এক্সিকিউটেবল কোড) হতে পারে। বিশেষ ফাইলগুলি সেই ফাইল যা ওএস চালানোর জন্য প্রয়োজনীয়। এর মধ্যে ডিরেক্টরি, লিঙ্ক, পাইপ, সকেট এবং ডিভাইস ফাইল অন্তর্ভুক্ত রয়েছে। ¹
এটি কনভেনশন দ্বারা ফাইলের নামগুলি কী ধরণের ফাইল হতে পারে তা বোঝাতে এক্সটেনশন ধারণ করে যেমন সি উত্স কোডের জন্য * .c, ওয়েব পৃষ্ঠাগুলির জন্য * .html ইত্যাদি etc.
কিছু সিস্টেমে (যেমন, ইউএনআইএক্স), ফাইল এক্সটেনশনগুলি কেবল কনভেনশন হয় এবং অপারেটিং সিস্টেম দ্বারা প্রয়োগ করা হয় না। File.txt নামের ফাইলটি কোনও ধরণের টেক্সট ফাইল হতে পারে তবে সেই নামটি কম্পিউটারে কোনও প্রকৃত তথ্য জানানোর চেয়ে মালিককে মনে করিয়ে দেওয়া আরও বেশি। অন্যদিকে, একটি সি সংকলক প্রকৃতপক্ষে জোর দিয়ে থাকতে পারে যে এটি ফাইলগুলি সি। সি এর মধ্যে সংকলন করতে হবে এবং এটি না পারলে এটি সংকলন করতে অস্বীকার করতে পারে।
যদি কোনও ফাইল যথাযথ এক্সটেনশন ছাড়াই সেভ করা হয় বা নামকরণ করা হয় তবে এটি এখনও সেই ফাইল ধরণের জন্য একই ফর্ম্যাটটিকে ধরে রাখে। বেশিরভাগ ফাইল ম্যানেজাররা কীভাবে অ্যাপ্লিকেশনগুলি দিয়ে ফাইলগুলি খুলবেন এবং কীভাবে এক্সটেনশান ছাড়াই বেশিরভাগ ব্যবহারকারীকে "আপনি এই ফাইলটি খোলার জন্য যে প্রোগ্রামটি ব্যবহার করতে চান তা চয়ন করুন:" দিয়ে ব্যবহারকারীকে অনুরোধ জানানো হবে।
শেষ অবধি, পরিবেশের ভেরিয়েবলগুলি সিস্টেম-প্রশস্ত এবং ব্যবহারকারী-স্তরের সেটিংস সংজ্ঞায়িত করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, পরিবর্তনশীল EDITOR
যখন টেক্সট যেমন হ্যান্ডলিং যা টেক্সট এডিটর খুলতে উল্লেখ করতে ব্যবহৃত হয় vim
, nano
ইত্যাদি এই জন্যে কত প্রসেস যা একটি সম্পাদনা মত খোলা সম্পাদক জানেন git
বার্তা কমিট। অন্যথায়, আপনি সঠিক যে কোন অ্যাপ্লিকেশনটি ব্যবহার করতে হবে তা আপনাকে অবশ্যই নির্দিষ্ট করতে হবে। নোট করুন যে vim
সেটিংটি filetype on
সেট করা থাকলে সেটি এক্সটেনশানগুলি পরীক্ষা করে এবং ফাইলের সামগ্রীগুলি পরীক্ষা করে ফাইলের প্রকারগুলি সনাক্ত করে , যা সঠিক সিনট্যাক্স হাইলাইটিং, ইনডেন্টেশন ইত্যাদি প্রয়োগ করে ²
টি এল; ডিআর
সংক্ষেপে, এটি ব্যবহারকারী-স্তরের অ্যাপ্লিকেশন যা কোনও প্রোগ্রামের সাথে কোনও নির্দিষ্ট ফাইল টাইপ খুলতে হবে এবং ওএস নিজেই নয় তা নির্ধারণ করে।