{mosimage}
লিনাক্স শেল লিনাক্সের একটি অতি গুরুত্বপূর্ণ বিষয়। বর্তমানে সাধারণ ব্যাবহারকারীগণ অবশ্য শেল ব্যাবহার করেন না। এটি সবচেয়ে বেশী ব্যাবহার করেন শেল প্রোগ্রামাররা। তবে তারপরও জেনে রাখা ভাল। মাঝে মাঝে কাজে লাগবে। তো চলুন দেখা যাক শেল কি?
কম্পিউটার মূলত বুঝে 0 ও 1 এই দুটি সংখ্যা যা বাইনারি সংখ্যা নামে পরিচিত। এ কারণে কম্পউটারে সমস্ত কিছু এই দুটি সংখ্যার বিভিন্ন কম্বিনেশনের মাধ্যমে প্রকাশ করা হয়। কিন্তু এইভাবে কোন কিছু প্রকাশ করা আমাদের জন্য বেশ কষ্টসাধ্য। বাইনারিতে পড়া ও লিখা আমাদের জন্য এক কথায় অসম্ভব। তাই এই সমস্যা দূর করতে একটা মধ্যম পন্থা বের করা হল। আর তা হচ্ছে এই শেল। শেল হচ্ছে এমন একটি প্রোগ্রাম যা ইংরেজীতে আমাদের কমান্ড নেয় এবং বাইনারিতে পরির্বতন করে কম্পিউটারকে প্রদান করে। অর্থ্যাৎ শেল আমাদের জন্য যা করে তা হচ্ছে:-
আমাদের দেয়া কমান্ড >> লিনাক্স শেল >> বাইনারি সংখ্যায় রুপান্তর >> এখন লিনাক্স অপারেটিং সিস্টেম বুঝতে পারবে
এই environment বা পরিবেশটা দেয়া হয়েছিল ব্যাবহারকারীদের বিভিন্ন কাজের জন্য। শেল আসলে একটা কমান্ড ইন্টারপ্রেটার যা স্ট্যান্ডার্ড ইনপুট ডিভাইস যেমন কিবোর্ড বা ফাইল থেকে ইনপুট নেয় এবং লিনাক্সকে বলে ব্যাবহারকারী কি চাচ্ছে। আমরা যখন কিবোর্ড থেকে কমান্ড দেই তখন একে বলা হয় কমান্ড লাইন ইন্টারফেস (CLI)। লিনাক্সে বিভিন্ন শেল আছে। এদের মধ্যে bash shell, korn shell, c shell উল্ল্যেখযোগ্য। Bash shell সব লিনাক্সেই আছে। এটা একটা ফ্রিওয়্যার । C shell এর সিনট্যাক্স প্রায় অনেকটা C programming language এর মত। আমরা উইনডোজ অপারেটিং সিস্টেমেও শেল ব্যাবহার করি। সেক্ষেত্রে এর নাম হয়ে যায় কমান্ড প্রম্পট বা কমান্ড উইন্ডো। কমান্ড প্রম্পট শেল এর মতই কাজ করে কিন্তু তা লিনাক্স শেল এর মত এত শক্তিশালী নয়।
লিনাক্সে শেল ওপেন করা খুবই সহজ। আমরা চাইলে দুইটি পদ্বতিতে শেল ওপেন করতে পারি।
প্রথমত: টারমিনাল ইমুলেটরের মাধ্যমে
দ্বিতীয়ত: ভারচুয়াল টারমিনালের মাধ্যমে
টারমিনাল ইমুলেটরের মাধ্যমে
টারমিনাল ইমুলেটর হচ্ছে একটি প্রোগ্রাম যা একটি উইন্ডোর মধ্যে একটি শেল ওপেন করে। এর মানে আপনি যদি Graphich user interface (GUI) এ থেকেই শেল ব্যাবহার করতে চান তবে টারমিনাল ইমুলেটর উইনডোস অপারেটিং সিস্টেমের মত একটি উইন্ডো ওপেন করবে এবং ঐ উইন্ডোতে আপনার কাংখিত প্রোগ্রামটি (এক্ষেত্রে শেল) চালু করবে। এর ফলে আপনাকে GUI থেকে বের হয়ে কাজ করতে হবে না। লিনাক্সে প্রচুর টারমিনাল ইমুলেটর আছে। এর মধ্যে আমার প্রিয় হচ্ছে xterm. এছাড়া আরো রয়েছে konsole, rxvt, kvt, eterm, gnome-terminal ইত্যাদি। আপনি এগুলোর যে কোনটি ব্যাবহার করতে পারেন এবং যতগুলি খুশি ততগুলি ওপেন করতে পারেন কারণ বিভিন্ন টারমিনালের ইমুলেটরের বিভিন্ন রকম bell ও whistles রয়েছে কিন্তু এরা সবাই একই কাজ করে। কারণ এদের প্রত্যেকের ব্যাবহৃত শেল হচ্ছে bash shell.
ভারচুয়াল টারমিনালের মাধ্যমে
শেল ব্যাবহারের আরেকটি উপায় হচ্ছে GUI থেকে সম্পূর্ণ বের হয়ে যাওয়া। কিন্তু আপনি বোধহয় তা করতে চাইবেন না। সেক্ষেত্রে আপনি GUI থেকে সুইচ করে ভারচুয়াল টারমিনালের মাধ্যমে শেল ব্যাবহার করতে পারেন। Ctrl+Alt+F1 চাপলেই আপনার GUI সাময়িকভাবে স্থগিত হয়ে ভারচুয়াল টারমিনালে চলে যাবে। এভাবে আপনি F1 থেকে F6 পর্যন্ত মোট ছয়টি ফাংশন কি দিয়ে মোট ছয়টি ভারচুয়াল টারমিনালে সুইচ করতে পারেন। Ctrl+Alt+F1 আপনাকে প্রথম ভারচুয়াল টারমিনালে নিয়ে আসে, তেমনি Ctrl+Alt+F2 দ্বিতীয় ভারচুয়াল টারমিনালে নিয়ে আসে, এভাবে মোট ছয়টি।
শেল এর কাজ শেষ করে নিশ্চই আপনি GUI তে ফিরে আসতে চাইবেন। সেক্ষেত্রে Ctrl+Alt+F7 চাপুন। সাবাস, আপনি ফিরে পেয়েছেন আপনার অতি পছন্দের GUI.
ভারচুয়াল টারমিনালে প্রবেশ করতে চাইলে অনেক সময় login: এই অপশনটি দেখাতে পারে। সেক্ষেত্রে আপনি আপনার ইউজার নেম দিবেন এবং পাসওয়ার্ড চাইলে আপনার পাসওয়ার্ডটি দিবেন। যদি কখনো ভারচুয়াল টারমিনালে হিজিবিজি অনেক লিখা দেখতে পান তবে ঘাবড়ে যাবার কিছু নেই। অন্য একটি টারমিনালে চলে যান, সব ঠিক হয়ে যাবে। এরকম মাঝে মাঝে হয়।
কমান্ড
এখন আমরা কমান্ড দিয়ে দেখব শেল কিভাবে কাজ করে। টারমিনাল ইমুলেটর বা ভারচুয়াল টারমিনালে আসুন। আপনার কম্পিউটারের নাম ও আপনার নাম দেখতে পাবেন। আমার কম্পিউটারের নাম localhost এবং আমার নাম faisal. আমি টারমিনালে এলে দেখতে পাই
faisal@localhost: ~$
আপনি আপনার কম্পিউটারের নাম এ আপনার নাম দেখতে পাবেন। এবার টাইপ করুন:
faisal@localhost: ~$ kshdfkh
এন্টার দিন। তাহলে মনিটরে আসবে
faisal@localhost: ~$ kshdfkh
bash: kshdfkh: command not found
চমত্কার, আপনার শেল কাজ করছে। এবার আবার টাইপ করুন
faisal@localhost: ~$ ls –l
দেখবেন আপনি যে ড্রাইভে আছেন সে ড্রাইভের ডিরেক্টরি লিস্ট দেখাচ্ছে। ব্যাস, আপনি শেল এ কাজ করা শিখে গেলেন। শেল প্রোগ্রামার হতে আপনার আর বেশি দেরি নেই। পরবর্তী দিন আমরা নেভিগেশন শিখব। তবে তার আগে যদি আপনি ডিরেক্টরি স্ট্রাকচারটা একটু দেখে নেন তবে নেভিগেশন কমান্ডগুলো শিখতে সুবিধা হবে। আসলে কমান্ড শিখতে গিয়ে মজা পাবেন যদি ডিরেক্টরি স্ট্রাকচারটা জানা থাকে। তাহলে মজা করে ঘুরতে পারবেন লিনাক্স এর ভিতর। তো আজকের জন্য এ পর্যন্তই থাক।
চলবে……
আশা করি আপনি “চলবে……” টি চালিয়ে যাবেন।