পাইথনের ওএস মডিউল কী এবং আপনি এটি কীভাবে ব্যবহার করবেন?

পাইথনের ওএস মডিউল কী এবং আপনি এটি কীভাবে ব্যবহার করবেন?

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





পাইথন ওএস সিস্টেমের বৈশিষ্ট্য

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





এই মডিউলটিতে দুটি সাব-মডিউল, os.sys মডিউল এবং os.path মডিউল রয়েছে। আপনি বিস্তৃত কাজ সম্পাদনের জন্য ওএস মডিউল দ্বারা প্রদত্ত ফাংশনগুলি ব্যবহার করতে পারেন। কিছু সাধারণ ব্যবহারের মধ্যে রয়েছে শেল কমান্ড চালানো, ফাইল এবং ডিরেক্টরি পরিচালনা করা, প্রসারণ প্রক্রিয়া ইত্যাদি।





ওএস মডিউল দিয়ে শুরু করা

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

সম্পর্কিত: উবুন্টুতে পাইথন কিভাবে ইনস্টল করবেন



টাইপ করে দোভাষী শুরু করুন অজগর আপনার টার্মিনাল বা কমান্ড শেলের মধ্যে। একবার এটি খোলা হলে, নিম্নলিখিত বিবৃতিটি ব্যবহার করে ওএস মডিউল আমদানি করুন।

আমার ম্যাকবুক এয়ারের বয়স কত?
>>> import os

আপনি এখন পাইথন সহ ওএস মডিউল দ্বারা প্রদত্ত কার্যকারিতা অ্যাক্সেস করতে পারেন পদ্ধতি কমান্ড উদাহরণস্বরূপ, আপনি সিস্টেম প্ল্যাটফর্ম ব্যবহার করে নির্ধারণ করতে পারেন নাম কমান্ড নীচের উদাহরণটি দেখায় কিভাবে OS মডিউল দ্বারা উন্মুক্ত সিস্টেম কমান্ডগুলি আহ্বান করা যায়।





>>> os.name

এই ফাংশনটি পরীক্ষা করে যে নির্দিষ্ট OS নির্দিষ্ট মডিউলগুলি উপস্থিত আছে এবং তার উপর ভিত্তি করে প্ল্যাটফর্ম নির্ধারণ করে। ব্যবহার তোমার নাম বিস্তারিত তথ্য পেতে ফাংশন।

>>> os.uname()

এই কমান্ডটি মেশিন আর্কিটেকচার, রিলিজ এবং সংস্করণের তথ্যের পাশাপাশি সঠিক সিস্টেম প্ল্যাটফর্ম প্রদর্শন করে। ব্যবহার getcwd বর্তমান কার্যকরী ডিরেক্টরি পুনরুদ্ধার করতে ফাংশন।





>>> os.getcwd()

আপনি সহজেই পাইথন সিস্টেম কমান্ড ব্যবহার করে কাজের ডিরেক্টরি পরিবর্তন করতে পারেন chdir । স্ট্রিং প্যারামিটার হিসেবে নতুন লোকেশন পাস করুন।

>>> os.chdir('/tmp')

দ্য mkdir ওএস মডিউলের ফাংশন নতুন ডিরেক্টরি তৈরি করা সহজ করে তোলে। এটি আমাদের পুনরাবৃত্তিমূলক ফোল্ডারগুলি তৈরি করতে দেয়, যার অর্থ পাইথন সমস্ত অনুপস্থিত ডিরেক্টরি তৈরি করবে যা পাতা নির্দেশিকার পিতামাতা।

>>> os.mkdir('new-dir')

ব্যবহার rmdir আপনার কাজের ডিরেক্টরি থেকে ডিরেক্টরি মুছে ফেলার কমান্ড।

>>> os.rmdir('new-dir')

পাইথন সিস্টেম কমান্ডের উদাহরণ

ওএস মডিউল দ্বারা প্রদত্ত সিস্টেম কমান্ড প্রোগ্রামারদের শেল কমান্ড চালানোর অনুমতি দেয়। একটি স্ট্রিং হিসাবে কমান্ড নাম সংজ্ঞায়িত করতে ভুলবেন না। একবার তুমি অজগরকে ডাক পদ্ধতি কমান্ড, এটি একটি নতুন সাবশেলে প্রদত্ত কমান্ডটি চালাবে।

>>> cmd = 'date'
>>> os.system(cmd)

আপনি এই একই পদ্ধতি ব্যবহার করে অন্যান্য স্বতন্ত্র অ্যাপ্লিকেশন চালাতে পারেন। নিম্নলিখিত উদাহরণটি আপনার পাইথন শেল থেকে টার্মিনাল এডিটর ন্যানো চালায়।

>>> cmd = 'nano'
>>> os.system(cmd)

পাইথন ওএস সিস্টেম প্রতিটি কমান্ড কার্যকর করার জন্য রিটার্ন কোডও আউটপুট করে। POSIX সিস্টেমগুলি সফল এক্সিকিউশন এবং ননজিরো মানগুলির জন্য 0 প্রদান করে সমস্যাগুলি নির্দেশ করে।

আপনি যা চান তা চালানোর জন্য আপনি পাইথনে ওএস সিস্টেম ব্যবহার করতে পারেন। উদাহরণস্বরূপ, যদি আপনার প্রোগ্রামটি ব্যবহারকারীর মেশিনে একটি প্রোগ্রামের সংস্করণ তথ্য পড়ার প্রয়োজন হয়, তাহলে আপনি নিচের মত কিছু করতে পারেন।

>>> cmd = 'gcc --version'
>>> os.system(cmd)

নীচের উদাহরণটি একটি সহজ শেল কমান্ড চালায় যা একটি নতুন ফাইল তৈরি করে users.txt এবং লগ ইন করা সমস্ত ব্যবহারকারীর সাথে এটিকে পপুলেট করে। প্রচুর পাইথন প্রোগ্রাম এই কাজগুলো করে।

>>> os.system('users > test')

আমরা স্ট্রিং হিসাবে ওএস সিস্টেমে কমান্ডের নাম প্রেরণ করছি। আপনি সব ধরনের ব্যবহার করতে পারেন দরকারী টার্মিনাল কমান্ড একইভাবে.

>>> os.system('ping -c 3 google.com')

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

>>> import subprocess
>>> subprocess.run(['ping','-c 3', 'example.com'])

ওএস মডিউলের মাধ্যমে ফাইল এবং ডিরেক্টরি পরিচালনা করা

পাইথন ওএস মডিউল ব্যবহার করে কিভাবে সহজ ফাইল এবং ডিরেক্টরি তৈরি করতে হয় তা আমরা দেখিয়েছি। আপনি যদি নেস্টেড ফোল্ডার তৈরি করতে চান? ওএস সিস্টেম আমাদের প্রোগ্রামারদের জন্য এটির যত্ন নেয়। উদাহরণস্বরূপ, নীচের স্নিপেটগুলি ফোল্ডারটি তৈরি করে $ HOME/test/root/api । এটি প্রয়োজনীয় পিতামাতার ডিরেক্টরিও তৈরি করবে যদি সেগুলি পাওয়া না যায়।

>>> dirname = os.path.join(os.environ['HOME'], 'test', 'root', 'api')
>>> print(dirname)
>>> os.makedirs(dirname)

প্রথমে, আমরা হোম ডিরেক্টরি ব্যবহার করে পুনরুদ্ধার করেছি সম্পর্কিত এবং তারপর মাধ্যমে ফোল্ডার নাম যোগদান os.path.join । মুদ্রণ বিবৃতি ফোল্ডারের নাম প্রদর্শন করে, এবং makedirs এটি তৈরি করে।

আমরা ব্যবহার করে নতুন ডিরেক্টরি দেখতে পারি listdir ওএস মডিউলের পদ্ধতি।

>>> os.chdir(os.path.join(os.environ['HOME'], 'test', 'root', 'api'))
>>> os.system('touch file1 file2 file3')
>>> os.listdir(os.environ['HOME'])

আপনি সহজেই এপিআই ডিরেক্টরিটির নাম পরিবর্তন করতে পারেন পুনnameনামকরণ ওএস মডিউল দ্বারা দেওয়া কমান্ড। নীচের বিবৃতিটি এই এপিআই ডিরেক্টরিটির নামকরণ করে টেস্ট-এপিআই।

>>> os.rename('api', 'test-api')

ব্যবহার ফাইল এবং নাম OS- এর কাজ যদি আপনার প্রোগ্রামকে নির্দিষ্ট ফাইল বা ডিরেক্টরি যাচাই করতে হয়।

>>> os.path.isfile('file1')
>>> os.path.isdir('file1')

পাইথনে ওএস মডিউল ডেভেলপারদের ফাইল এক্সটেনশনের পাশাপাশি ফাইল এবং ফোল্ডারের নামও বের করতে দেয়। নীচের টুকরোগুলি ব্যবহার ব্যাখ্যা করে os.path.split এবং os.path.splitext এই বিষয়ে

>>> dir = os.path.join(os.environ['HOME'], 'test', 'root', 'api', 'file1.txt')
>>> dirname, basename = os.path.split(dir)
>>> print(dirname)
>>> print(basename)

ফাইলের নাম থেকে .txt বা .mp3 এর মত এক্সটেনশন বের করতে নিচের কোডটি ব্যবহার করুন।

>>> filename, extension = os.path.splitext(basename)
>>> print(filename)
>>> print(extension)

পাইথন ওএস সিস্টেমের বিবিধ ব্যবহার

ওএস মডিউল ব্যবহারকারীর প্রক্রিয়া এবং কাজের সময়সূচীর মতো জিনিসগুলি হেরফের করার জন্য অনেক অতিরিক্ত ফাংশন সরবরাহ করে। উদাহরণস্বরূপ, আপনি দ্রুত ব্যবহার করে বর্তমান প্রক্রিয়াটির ইউআইডি (ইউজার আইডি) পেতে পারেন সাক্ষী ফাংশন

>>> os.getuid()
>>> os.getgid()

দ্য getgid ফাংশন চলমান প্রক্রিয়ার গ্রুপ আইডি প্রদান করে। ব্যবহার করুন getpid পিআইডি (প্রসেস আইডি) পাওয়ার জন্য এবং গেটপিড প্যারেন্ট প্রসেস আইডি পেতে।

>>> os.getpid()
>>> os.getppid()

আপনি আপনার পাইথন প্রোগ্রাম থেকে ফাইল এবং ডিরেক্টরিগুলির অনুমতি পরিবর্তনের জন্য ওএস মডিউল ব্যবহার করতে পারেন। ব্যবহার chmod এটি করার জন্য OS এর কাজ।

>>> os.chmod('file1.txt', 0o444)

এই কমান্ড এর অনুমতি পরিবর্তন করে file1.txt প্রতি 0444 । ব্যবহার করুন 0o444 পরিবর্তে 0444 পাইথনের উভয় প্রধান সংস্করণ জুড়ে বিবৃতিটি সামঞ্জস্যপূর্ণ কিনা তা নিশ্চিত করতে।

পাইথন ওএস সিস্টেমের শক্তি ব্যবহার করুন

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

শেয়ার করুন শেয়ার করুন টুইট ইমেইল কিভাবে পাইথনে টুপল তৈরি এবং ব্যবহার করবেন

আপনার পাইথন কোডিংকে পরবর্তী স্তরে নিয়ে যেতে প্রস্তুত? টিপলগুলি কীভাবে তৈরি এবং ব্যবহার করবেন তা বোঝার সময় এসেছে।

পরবর্তী পড়ুন
সম্পর্কিত বিষয়
  • প্রোগ্রামিং
  • পাইথন
লেখক সম্পর্কে রুবাইয়াত হোসেন(39 নিবন্ধ প্রকাশিত)

রুবাইয়াত হল একটি সিএস গ্রেড যার ওপেন সোর্সের প্রতি তীব্র আবেগ রয়েছে। একজন ইউনিক্স অভিজ্ঞ ছাড়াও, তিনি নেটওয়ার্ক সুরক্ষা, ক্রিপ্টোগ্রাফি এবং কার্যকরী প্রোগ্রামিংয়েও আছেন। সে সেকেন্ডহ্যান্ড বইগুলির একটি আগ্রহী সংগ্রাহক এবং ক্লাসিক রকের জন্য কখনও শেষ না হওয়া প্রশংসা করে।

রুবাইয়াত হোসেনের কাছ থেকে আরো

আমাদের নিউজলেটার সদস্যতা

প্রযুক্তি টিপস, রিভিউ, ফ্রি ইবুক এবং এক্সক্লুসিভ ডিলের জন্য আমাদের নিউজলেটারে যোগ দিন!

সাবস্ক্রাইব করতে এখানে ক্লিক করুন