রিদওয়ান বিন শামীম
সেল প্রোগ্রামারকে ইউনিক্স সিস্টেম ব্যবহার করার সুযোগ করে দেয়। এটি ব্যবহারকারীর কাছ থেকে ইনপুট সংগ্রহ করে এবং তার ভিত্তিতে প্রোগ্রামকে সম্পন্ন করে থাকে। প্রোগ্রামের সম্পাদনা শেষ হলে এটি আউটপুট রূপে উপস্থাপিত হয়।
সেল মূলত একধরনের পরিস্থিতি যার মধ্যে আমাদের কম্যান্ড, প্রোগ্রাম ও সেল স্ক্রিপ্ট পরিচালিত হয়। সেলের বিভিন্ন প্রকরণ থাকতে পারে, ঠিক যেমন আছে অপারেটিং সিস্টেমের ক্ষেত্রে। সেলের প্রত্যেকটি প্রকরণের নিজস্ব সুস্থিত কম্যান্ড ও ফাংশন নির্ধারিত আছে।
সেল প্রম্পট
$ দ্বারা কম্যান্ড প্রম্পট বোঝায়, এটি সেলের মাধ্যমে প্রবর্তিত হয়ে থাকে। কীবোর্ডে এন্টার চাপার পর সেল ইনপুট পড়তে পারে। ইনপুটের প্রথম শব্দ দেখেই সেল কম্যান্ড সম্পর্কে ধারণা পেয়ে যায়। শব্দ মূলত নিরবচ্ছিন্ন ক্যারেকটারের সেট, স্পেস এবং ট্যাব যাদেরকে পৃথক করে রাখে।
নিচের উদাহরণে ডেট কম্যান্ডের উদাহরণ দেয়া হল,
$date ThuJun2508:30:19 MST2009
কম্যান্ড প্রম্পটকে পরিবেশ চলকের মাধ্যমে কাস্টমাইজ করা যায়।
সেল টাইপ
ইউনিক্সে প্রধানত দুই ধরণের সেল টাইপ আছে,
- বর্ন সেল
- সি সেল
এদের মধ্যে বর্ন সেল আবার কয়েক রকমের হয়,
- বর্ন সেল,
- কর্ন সেল,
- বর্ন এগেইন সেল,
- পিওসিক্স সেল।
কয়েকটি সি টাইপ সেল হল,
- সি সেল
- টেনেক্স/টপস সি সেল
মূল ইউনিক্স সেল স্টিফেন বার্নের উদ্ভাবিত ধারণা, ৭০এর দশকের মাঝামাঝি তিনি নিউ জার্সির এটিএন্ড টি বেল ল্যাবে থাকার সময় এটি লেখেন।
সেল স্ক্রিপ্টস
সেল স্ক্রিপ্টস এর মূল ধারণা হল কম্যান্ডের লিস্ট, যা সম্পাদনার ক্রমানুসারে সজ্জিত থাকে। আদর্শ সেল স্ক্রিপ্টে ধাপ গুলো # চিহ্ন দ্বারা সজ্জিত থাকে।
পরীক্ষামূলক স্ক্রিপ্ট
.sh এক্সটেনশন দ্বারা এটিকে বোঝানো হয়, এক্ষেত্রে সিস্টেমকে নিম্নোক্ত কোডের মাধ্যমে আগেই জানাতে হয় যে এরকমের একটি স্ক্রিপ্ট চালু করা হচ্ছে।
#!/bin/sh
এই ধরণের স্ক্রিপ্ট চালুর জন্য আগে সেবাং (shebang) লাইন এবং তার পর কম্যান্ড যোগ করতে হয়।
#!/bin/bashpwdls
সেল কম্যান্ড
স্ক্রিপ্টে নিম্নোক্ত ভাবে কম্যান্ড লেখা যায়,
#!/bin/bash # Author : Zara Ali # Copyright (c) Tutorialspoint.com # Script follows here: pwd ls
উপরের উপাদানগুলো সংরক্ষণ করে স্ক্রিপ্টকে সম্পাদনযোগ্য করা হয়,
$chmod+x test.sh
এখন সম্পাদনযোগ্য সেল স্ক্রিপ্ট পাওয়া গেলো,
$./test.sh
যা থেকে নিম্নোক্ত ফলাফল পাওয়া যায়,
/home/amrood index.htm unix-basic_utilities.htm unix-directories.htm test.sh unix-communication.htm unix-environment.htm
বর্তমান ডিরেক্টরিতে থাকা কোনও প্রোগ্রাম সম্পাদনের জন্য ./program_name ব্যবহার করা হয়।
এক্সটেনডেড সেল স্ক্রিপ্ট
নিচের কম্যান্ড read কম্যান্ড ব্যবহার করে যা কীবোর্ড থেকে ইনপুট নেয় এবং PERSON চলকের মান বিবৃত করে ও STDOUT এ মুদ্রিত করে।
#!/bin/sh # Author : Zara Ali # Copyright (c) Tutorialspoint.com # Script follows here: echo "What is your name?" read PERSON echo "Hello, $PERSON"
স্ক্রিপ্টের পরীক্ষামূলক সম্পাদন,
$./test.sh What is your name? Zara Ali Hello, Zara Ali $