সি প্রোগ্রামিং সহ পসিক্স ওপেন ফাংশন

Posix Open Function With C Programming



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

এই ফাংশনে একটি নির্দিষ্ট ফাইল খোলার জন্য এই ফাংশন সহ পাস করা প্যারামিটারের একটি সেট রয়েছে। আমরা আমাদের নিবন্ধের পরবর্তী শিরোনামে এই পরামিতিগুলি নিয়ে আলোচনা করব। যাইহোক, এই নিবন্ধের মূল লক্ষ্য হল লিনাক্স মিন্ট 20 এ পসিক্স ওপেন ফাংশনের ব্যবহার সম্পর্কে আপনাকে শিক্ষিত করা। এই নিবন্ধে, সি প্রোগ্রামিংয়ের সাথে ওপেন ফাংশন কীভাবে কাজ করে তা শিখুন







পসিক্স ওপেন ফাংশনের পরামিতি

পসিক্স ওপেন ফাংশনে দুটি প্যারামিটার রয়েছে যা আরও বিভিন্ন প্রকারে বিভক্ত। প্রথম প্যারামিটারটি হিসাবে পরিচিত পথ , যা আপনি যে ফাইলটি খুলতে চান তার অবস্থান বোঝায়। যদি আপনি একই ডিরেক্টরিতে একটি ফাইল খোলার জন্য আপনার সি কোড তৈরি করছেন যেখানে ফাইলটি খুলতে হবে, তাহলে আপনাকে কেবল ফাইলের নাম লিখতে হবে এবং এর পথটি বাদ দিতে হবে। যাইহোক, যদি খোলা ফাইলটি অন্য কোন ডিরেক্টরিতে থাকে, তাহলে আপনাকে অবশ্যই ফরওয়ার্ড-স্ল্যাশ (/) এর পরে ওপেন ফাংশনের একটি প্যারামিটার হিসাবে তার সম্পূর্ণ পথ নির্দিষ্ট করতে হবে।



পসিক্স ওপেন ফাংশনের দ্বিতীয় প্যারামিটারটি হিসাবে পরিচিত পতাকা , যা সেই বিকল্পগুলি বোঝায় যার সাহায্যে আপনি একটি ফাইল খুলতে পারেন। এই বিকল্পগুলি কেবল পঠনযোগ্য, কেবলমাত্র লিখতে, পড়তে এবং লিখতে, ফাইল তৈরি করা এবং ফাইল তৈরি প্রতিরোধ করা। এই ক্রিয়াকলাপগুলির সংশ্লিষ্ট পতাকাগুলি হল O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, এবং O_EXCL যথাক্রমে আপনি একটি সময়ে এই পতাকাগুলির মধ্যে একটি ব্যবহার করতে পারেন অথবা আপনি আপনার প্রয়োজনীয়তার উপর নির্ভর করে একবারে একাধিক পতাকা একত্রিত করতে পারেন | প্রতীক নীচের উদাহরণটি পড়ার পরে আপনি এই পতাকাগুলি আরও স্পষ্টভাবে বুঝতে শুরু করবেন।



উদাহরণ: লিনাক্স মিন্ট 20 এ পসিক্স ওপেন ফাংশন ব্যবহার করা

লিনাক্স মিন্ট 20 এ সি প্রোগ্রামিং সহ পসিক্স ওপেন ফাংশন ব্যবহার করার একটি উদাহরণ প্রদান করার জন্য, আমরা একটি প্রোগ্রাম তৈরি করেছি যা একটি ফাইল খোলার চেষ্টা করে। যদি সেই ফাইলটি ইতিমধ্যে বিদ্যমান থাকে, তাহলে এই ফাংশনটি কেবল এটি খুলবে; অন্যথায়, ফাংশন নির্দিষ্ট নামের একটি ফাইল তৈরি করবে। এখন, আমরা এই কর্মসূচির বাস্তবায়নের সমস্ত পর্যায়গুলি দেখে নেব, এর সৃষ্টি থেকে শুরু করে।





ধাপ 1: Posix ওপেন ফাংশন পরীক্ষা করার জন্য নমুনা প্রোগ্রাম তৈরি করুন

এখানে, আমরা আমাদের লিনাক্স মিন্ট 20 সিস্টেমের হোম ডিরেক্টরিতে একটি নথি তৈরি করেছি এবং এর নাম দিয়েছি OpenFunction.c। এই ডকুমেন্ট তৈরির পরে, আমরা এটি খুলব এবং নীচের ছবিতে দেখানো কোডটি সেই ফাইলে টাইপ করব।



উপরের ছবিতে দেখানো কোডে, আমরা একটি পূর্ণসংখ্যা পরিবর্তনশীল তৈরি করেছি, যার নাম fd , যা ফাইল বর্ণনাকারীকে বোঝায়। এই ভেরিয়েবলটি ওপেন ফাংশনের রিটার্ন মান নির্ধারণ করা হবে। এই পরিবর্তনশীলটির মান 3 হবে যদি ওপেন ফাংশন সফলভাবে কার্যকর হয়। অন্যথায়, এর মান হবে -1। ওপেন ফাংশনের পরামিতিগুলিতে, আমরা একটি ফাইলের নাম প্রদান করেছি, যেমন, NewFile.txt। এই ফাইলটি আগে আমাদের সিস্টেমে বিদ্যমান ছিল না, যার মানে আমাদের ওপেন ফাংশন এই ফাইলটি তৈরি করবে।

এছাড়াও, আমরা ওপেন ফাংশনের পতাকার মাধ্যমে নির্দিষ্ট করেছি যে যদি ফাইলটি ইতিমধ্যেই বিদ্যমান থাকে, তাহলে ফাইলটি কেবল পঠনযোগ্য মোডে খোলা উচিত; যদি এটি বিদ্যমান না থাকে, তাহলে ওপেন ফাংশন কেবল নির্দিষ্ট নাম দিয়ে একটি ফাইল তৈরি করবে। আমরা এটাও নির্দিষ্ট করে দিয়েছি যে fd পরিবর্তনশীল শূন্যের চেয়ে কম, তারপর ফাংশনটি নির্দিষ্ট ফাইলটি খোলার সময় ঘটে যাওয়া ত্রুটিটিও মুদ্রণ করবে। অবশেষে, আপনি আপনার কোড টিপে সংরক্ষণ করতে পারেন Ctrl + S

ধাপ 2: নমুনা প্রোগ্রাম কম্পাইল করুন

নমুনা প্রোগ্রাম লেখার পর, আমরা নিম্নলিখিত কমান্ড দিয়ে এটি কম্পাইল করার জন্য টার্মিনাল চালু করব:

$gccOpenFunction.c Openo OpenFunction

এখানে, OpenFunction.c সেই নমুনা প্রোগ্রাম ফাইলকে বোঝায় যা আমরা সংকলন করতে চাই, যেখানে -o পতাকা পরে OpenFunction বোঝায় বস্তু ফাইল যা সংকলনের পরে তৈরি হবে।

যদি আমাদের নমুনা প্রোগ্রামের সংকলন সফলভাবে পরিচালিত হয়, তাহলে প্রোগ্রামটি চালানোর পর আমরা টার্মিনালে কোন ত্রুটি বার্তা দেখতে পাব না, যেমনটি নীচের ছবিতে দেখানো হয়েছে:

ধাপ 3: নমুনা প্রোগ্রাম চালান

অবশেষে, আমাদের নমুনা প্রোগ্রাম সংকলনের পরে, আমরা নিম্নলিখিত কমান্ড জারি করে এটি লিনাক্স মিন্ট 20 এ চালাতে পারি:

$/OpenFunction

এখানে, OpenFunction একই বস্তুর ফাইলকে বোঝায় যা আমাদের নমুনা প্রোগ্রামের সংকলনের পরে তৈরি করা হয়েছিল।

আপনি নীচের ছবিতে আমাদের নমুনা প্রোগ্রামের আউটপুট দেখতে পারেন যে আমাদের ফাইল বর্ণনাকারী ভেরিয়েবলের মান, যেমন, fd , হল 3. এই আউটপুট মানে যে কোড সফলভাবে কার্যকর করা হয়েছে। অন্য কথায়, NewFile.txt নামে একটি ফাইল সফলভাবে তৈরি করা হয়েছে, যেহেতু ফাইলটি আগে আমাদের সিস্টেমে ছিল না। আপনি যদি চান, আপনি ফাইলটি তৈরি হয়েছে কিনা তা যাচাই করতে আপনার হোম ডিরেক্টরিতে গিয়ে এটি পরীক্ষা করে দেখতে পারেন।

উপসংহার

আজকের টিউটোরিয়াল আপনাকে দেখিয়েছে কিভাবে লিনাক্স মিন্ট 20 এ সি প্রোগ্রামিং এর সাথে পসিক্স ওপেন ফাংশন ব্যবহার করতে হয়। কোনও ফাইল খোলার কারণ যাই হোক না কেন, একটি ফাইল অ্যাক্সেস করার জন্য আপনাকে এখনও এই ফাংশনটি ব্যবহার করতে হবে। এই ফাংশন ছাড়া, আপনি কোন ফাইল অ্যাক্সেস করতে পারবেন না। অতএব, C এবং C ++ এ ফাইল পরিচালনা করার আগে আপনাকে অবশ্যই এই ফাংশনের ব্যবহার শিখতে হবে।