শেল স্ক্রিপ্ট
From Wikipedia, the free encyclopedia
শেল স্ক্রিপ্ট (ইংরেজি : Shell script) হচ্ছে একটি কমান্ড-লাইন ইন্টারপ্রিটার যা ইউনিক্স শেল দ্বারা চালিত একটি কম্পিউটার প্রোগ্রাম।[1] বিভিন্ন প্রকার শেল স্ক্রিপ্টকে একসাথে স্ক্রিপ্টিং ভাষা হিসাবে বিবেচনা করা হয়।
ফাইল ম্যানিপুলেশন, প্রোগ্রাম এক্সিকিউশন এবং টেক্সট প্রিন্ট করা ইত্যাদি অপারেশন অনায়াসে শেল স্ক্রিপ্টের দ্বারা সঞ্চালন করা যেতে পারে। যে স্ক্রিপ্ট দিয়ে আমরা পরিবেশ (এনভায়রনমেন্ট) সেট আপ করি, প্রোগ্রাম রান করাই এবং প্রয়োজনীয় পরিষ্কারকরণ, লগিং ইত্যাদি করে থাকি তাকে র্যাপার (wrapper) বলা হয়।
সাধারণত শেল স্ক্রিপ্ট বলতে একটি অপারেটিং সিস্টেম শেলকে স্বয়ংক্রিয় মোডে চালানো (রান করা) বোঝায়; কিছু নির্দিষ্ট অপারেটিং সিস্টেমে এদের বলা হয়, ব্যাচ ফাইল (যেমন এমএসডস-উইন৯৫ স্ট্রীম, ওএস/২), কমান্ড প্রোসিডিউর্স (যেমন ভিএমএস), এবং শেল স্ক্রিপ্ট (যেমন উইন্ডোজ এনটি স্ট্রীম এবং তৃতীয় পক্ষের ডেরিভেটিভস যেমন ৪এনটি—নিবন্ধে cmd.exe) ইত্যাদি। মেইনফ্রেম অপারেটিং সিস্টেমে আবার এর ভিন্ন নাম আছে।
সাধারণত ইউনিক্স/গ্নু/লিনাক্স/পোসিক্স সম্মত ইনস্টলেশনের সাথে কর্নশেল (KornShell) অন্তর্ভুক্ত থাকে। বিভিন্ন প্রকার শেলের সংস্করণ আছে যেমন ksh88, কর্ণ শেল '93 ইত্যাদি। বোর্ন শেল(sh) হচ্ছে সবচেয়ে পুরনো শেল যা এখনও ব্যবহার হয়; এছাড়াও ইউনিক্স সিস্টেমে সবসময় অন্তর্ভুক্ত থাকে সি শেল (csh), বোর্ন এগেইন শেল (bash), রিমোট শেল (rsh), SSL টেলনেট সংযোগের জন্য একটি নিরাপদ শেল (ssh) এবং tclsh নামক একটি শেল যা Tcl/Tk ইনস্টলেশনের জন্য একটি প্রধান উপাদান; wish ও একটি গুই ভিত্তিক Tcl/Tk শেল। সি প্রোগ্রামিং ভাষা এবং Tcl শেলের সিনট্যাক্স উপর্যুক্ত প্রোগ্রামিং ভাষাসমূহের অনুরূপ। কর্ণ শেল ও ব্যাশ (Bash) শেল অ্যালগোল (ALGOL) ভাষা এবং অন্যান্য কিছু উপাদানের উপর ভিত্তি করে তৈরি। এদুটি অনেকাংশে বোর্ন (Bourne) শেলের ন্যায়। অন্যদিকে, পার্ল প্রোগ্রামিং ভাষা ডিজাইনে বিভিন্ন শেল প্লাস সরঞ্জাম যেমন awk, sed, grep, এবং বিভিন্ন প্রোগ্রামিং ভাষা বেসিক, লিস্প, সি র অবদান আছে।
অন্যান্য শেলের মধ্যে আছে ash, msh, ysh, zsh (একটি বহুল ব্যবহৃত উন্নত মানের কর্নশেল), টেনেক্স(Tenex) সি শেল (tcsh), পার্ল-এর মত শেল (psh) ইত্যাদি যা ডাউনলোড বা ক্রয় করা যেতে পারে। এছাড়া পাইথন, রুবি, সি, জাভা, পার্ল, পাস্কেল, রেক্স এর উপর ভিত্তি করে নির্মিত বিভিন্ন শেলও ব্যাপকভাবে পাওয়া যায়। আরেকটি পরিচিত শেল হল গিয়ে osh যার ম্যানুয়াল অনুযায়ী এটি "ইউনিক্স ষষ্ঠ সংস্করণ থেকে গৃহীত একটি উন্নত, পূর্ব সংস্করণের সাথেও চলে এমন স্ট্যান্ডার্ড কমান্ড ইন্টারপ্রিটার"।
MKS টুলকিট, সিগউইন, ইউউইন, ইনটারিক্স এবং অন্য কিছু উইন্ডোজ-ইউনিক্স আন্তঃপ্রক্রিয়া(Windows-Unix interoperability) সফটওয়্যার আছে যা ব্যবহার করে আমরা উইন্ডোজ সিস্টেমেও উপরে উল্লেখিত শেলসমূহ ও ইউনিক্স প্রোগ্রামিং এর সুবিধা পেতে পারি। সংকেত ও অন্যান্য আন্তঃ প্রসেস যোগাযোগ(inter-process communication), সিস্টেম কল এবং এপিআই(এপিআই) গুলো এভাবে লাভ করা সম্ভব। আরেকটি উইন্ডোজ শেল হল হ্যামিলটন সি শেল যা অনেকটা ইউনিক্স সি শেলের মত। মাইক্রোসফট তার এনটি ভিত্তিক অপারেটিং সিস্টেমের সাথে ব্যবহারের জন্য 'ইউনিক্সের জন্য উইন্ডোজ সেবা' নামক একটি শেল বিতরণ করে থাকে যা একটি পোজিক্স ভিত্তিক পরিবেশ সাব-সিস্টেম।