টার্মিনাল অ্যাপ macOS-এ কমান্ড লাইনের গেটওয়ে। এটি একটি শেল বা কমান্ড ইন্টারপ্রেটারের সাথে ইন্টারফেস প্রদান করে যা আপনার কমান্ড গ্রহণ করে রুটিন ও জটিল উভয় কাজ সম্পন্ন করে।
আপনি যদি নতুন শুরু করেন বা টার্মিনালে অনেক সময় কাটান, তবে এর লুক, ফিল, এবং বিভিন্ন অ্যাট্রিবিউট কাস্টমাইজ করতে চাইতে পারেন। আমরা আপনাকে টার্মিনাল কাস্টমাইজ করার কিছু আকর্ষণীয় উপায় দেখাব যাতে আপনার এনভায়রনমেন্ট ও ওয়ার্কফ্লোর জন্য সেটি সেরা কাজ করে।
টার্মিনাল উইন্ডোর বেসিকস
টার্মিনাল অ্যাপ খোলার সাথে আপনি একটি প্রায় খালি উইন্ডো দেখবেন দুটি লাইন টেক্সটের সাথে। প্রথম লাইন আপনার লাস্ট লগইনের তারিখ ও সময় দেখাবে। উদাহরণস্বরূপ:
Last login: Wed Feb 13 01:08:35 on ttys000
দ্বিতীয় লাইন হলো আসল কমান্ড প্রম্পট; শেষে সেই রেক্ট্যাঙ্গুলার বক্স আপনার কার্সর। আপনি এই লাইনে কমান্ড টাইপ করবেন:
Rahul-Mac:~ rahulsaigal$
প্রতিটি এলিমেন্টের অর্থ:
- প্রম্পটের প্রথম অংশ আপনার ম্যাকের নাম। কোলন (:) ভিজ্যুয়াল সেপারেটর।
- দ্বিতীয় অংশ টিল্ডা (~) দিয়ে শুরু। এটি ইন্ডিকেট করে আপনি হোম ডিরেক্টরিতে আছেন এবং শর্ট ইউজারনেম ব্যবহার করছেন।
- শেষে ডলার সাইন ($) মানে আপনি নন-রুট ইউজার হিসেবে লগড-ইন।
টার্মিনাল উইন্ডো মডিফাই করুন
টার্মিনাল উইন্ডো macOS-এ অন্য যেকোনো অ্যাপের মতো বিহেভ করে। আপনি মিনিমাইজ, মুভ, রিসাইজ, জুম, এবং কন্টেন্ট স্ক্রোল করতে পারবেন। টার্মিনাল দীর্ঘদিন ব্যবহার করলে আপনার টাইপ করা কমান্ডগুলো প্রচুর টেক্সট তৈরি করবে।
এই টেক্সট ছোট, অ্যানালাইজ করার কঠিন, এবং কার্সর লোকেট করা কঠিন করতে পারে। আপনি উইন্ডো রিসাইজ করতে পারেন, কিন্তু অ্যাপ কুইট করলে পরিবর্তনগুলো হারিয়ে যাবে।
টার্মিনাল উইন্ডো মডিফাই করতে Shell > Show Inspector-এ যান বা Cmd + I চাপুন Inspector উইন্ডো খোলার জন্য। Window সেকশনের নিচে Columns এবং Rows ফিল্ডে ভ্যালু দিন বা উইন্ডো রিসাইজ করে আপনার পছন্দমতো করে সেটি অটোমেটিক্যালি ফিল আপ করুন।
একবার টার্মিনাল উইন্ডোর নির্দিষ্ট সাইজ, শেপ, এবং পজিশন পাওয়া গেলে Shell > Use Settings as Default বেছে নিন।
টার্মিনাল থিম টুইক করুন
ডিফল্ট টার্মিনাল সাদা ব্যাকগ্রাউন্ডে কালো টেক্সট দিয়ে আসে। কিন্তু আপনি এর বিভিন্ন অ্যাট্রিবিউট কাস্টমাইজ করতে পারেন যেন ব্যাকগ্রাউন্ড কালার, ফন্ট (টাইপফেস ও সাইজ), টেক্সট কালার, কার্সর টাইপ, এবং আরও অনেক কিছু।
Shell > New Window-এ যান এবং কিছু বিল্ট-ইন থিম ট্রাই করুন। এগুলিতে Grass, Homebrew, Man Page, Ocean, Red Sands, এবং আরও অনেক কিছু অন্তর্ভুক্ত।
Preferences > Profiles প্যানে সব প্রি-বিল্ট থিম দেখাবে। বাম সাইডবারে ভিজ্যুয়াল থাম্বনেইল এবং ডান প্যানেলে অ্যাট্রিবিউট। এটি ছয় সেকশনে ভাগ: Text, Window, Tab, Shell, Keyboard, এবং Advanced।
অ্যাট্রিবিউট টুইক করতে একটি থিম সিলেক্ট করুন এবং Gear মেনু থেকে Duplicate Profile বেছে নিন।
টেক্সট অ্যাট্রিবিউট
টার্মিনাল আপনাকে বিভিন্ন টেক্সট অ্যাট্রিবিউট কাস্টমাইজ করতে দেয়। ফন্ট চেঞ্জ করতে Font সেকশনের Change বাটনে ক্লিক করে ফন্ট টাইপফেস ও সাইজ বেছে নিন।
টেক্সট स्मুথিং অ্যাপ্লাই করা, বোল্ড ফন্ট ব্যবহার করা, বোল্ড টেক্সটের জন্য ব্রাইট কালার ব্যবহার করা ইত্যাদি করা যায়। টেক্সট কালার চেঞ্জ করতে Text কালারের পাশে ক্লিক করে অপশন বেছে নিন।
কার্সর শেপ চেঞ্জ করতে Block, Underline, বা Vertical Bar সিলেক্ট করুন। Cursor শব্দের পাশের কালার বাটনে ক্লিক করলে কার্সর কালারও বদলাবে। Opacity এবং Blur স্লাইডার অ্যাডজাস্ট করে টার্মিনাল উইন্ডো ট্রান্সপারেন্ট করা যাবে।
এভাবে আপনি একটি ওয়েব পেজের উপরে সরাসরি টার্মিনাল উইন্ডো রাখে ইনস্ট্রাকশন পড়েই কমান্ড টাইপ করতে পারবেন।
উইন্ডো অ্যাট্রিবিউট
উইন্ডো অ্যাট্রিবিউটে টাইটেল, সাইজ, স্ক্রোলব্যাক লিমিট, এবং অন্যান্য বিহেভিয়ার অন্তর্ভুক্ত। মনে রাখবেন, এই প্যানের অপশনগুলো শুধু প্রোফাইলের জন্য প্রযোজ্য, পুরো টার্মিনাল অ্যাপের জন্য নয়। উইন্ডোর নাম বদলাতে Title ফিল্ডে নতুন টেক্সট টাইপ করুন।
চেকবক্সগুলো সিলেক্ট করে এক্টিভ প্রসেসের নাম, ওয়ার্কিং ডিরেক্টরি, পাথ, শেল নাম, এবং আরও অনেক কিছু দেখাতে পারবেন। কারেন্ট থিমের ডিফল্ট উইন্ডো সাইজ চেঞ্জ করা যায় এবং স্ক্রোলব্যাক বাফারের সাইজ কনফিগার করা যায় যাতে কমান্ড हिस্টরি দিন বা সপ্তাহ ধরে সংরক্ষিত থাকে।
শেল অ্যাট্রিবিউট
এই সেকশনে আপনি ফাইন-টিউন করতে পারবেন টার্মিনাল কীভাবে কাজ করে। স্টার্টআপে রান করার জন্য একটি কমান্ড বেছে নিন; উদাহরণস্বরূপ, একটি অ্যাল্টারনেট শেল শুরু করুন। টার্মিনালকে উইন্ডো বন্ধ করার আগে প্রম্পট করার অপশনও আছে। Ask before closing কে Always সেট করলে অকস্মাত বন্ধ হওয়া রুকবে, Never সেট করলে প্রম্পট অ্যানয়িং লাগলে বন্ধ থাকবে।
Only if there are processes other than the login shell and চেক করলে টার্মিনাল অ্যাপ কুইট করার আগে সতর্ক করবে। এটি উপযোগী যদি আপনি ভুল উইন্ডো এলিমেন্টে ক্লিক করেন বা ভুল কী সিকোয়েন্স চাপেন।
উইন্ডো গ্রুপের সাথে কাজ করুন
আপনি কি চান আপনার টার্মিনাল উইন্ডোগুলো নির্দিষ্ট ভাবে সাজিয়ে রাখুন এবং সেশন রিজিউম করার সময় রিয়ারেঞ্জ ও রিলঞ্চ না করতে হয়? উইন্ডো গ্রুপ ফিচার আপনার সময় বাঁচাবে এবং প্রোডাক্টিভিটি বাড়াবে। এর ব্যবহারে প্রতিটি উইন্ডোর নিজস্ব প্রসেস, অ্যাট্রিবিউট, এবং ডেস্কটপে পজিশন থাকবে।
উদাহরণস্বরূপ, একটি উইন্ডোতে Vim দিয়ে ফাইল এডিট করছেন, অন্যটিতে Octave চলছে। হয়তো একটি উইন্ডোতে প্রোগ্রামের man page রেফার করতে চান এবং অন্যটিতে কমান্ড ট্রাই করতে চান। এবং একটি শেল যদি লম্বা টাস্কে ব্যস্ত থাকে, তবে অন্য উইন্ডোতে কমান্ড চালাতে চাইতে পারেন।
উইন্ডো গ্রুপ সেভ করুন
উইন্ডো গ্রুপ স্থাপন করার আগে আপনাকে করতে হবে:
- উইন্ডোগুলো অন-স্ক্রিন আপনার পছন্দমতো সংগঠিত করুন।
- প্রতিটি উইন্ডোর অ্যাট্রিবিউট, সাইজ, এবং শেপ টুইক করুন।
- প্রতিটি উইন্ডোর জন্য যেসব কমান্ড রিজিউম করতে চান সেগুলো রান করুন।
তারপর Window > Save Windows as Group বেছে নিন। নাম দিন, Use window group when Terminal starts চেক করুন, এবং Save চাপুন।
উইন্ডো গ্রুপ রিস্টোর করুন
উইন্ডো গ্রুপ রিস্টোর করতে Window > Open Window Group বেছে নিন। এভাবে আপনি বর্তমান শেলে কাজ চালিয়ে যেতে পারবেন কিন্তু প্রয়োজনে গ্রুপ খুলে নির্দিষ্ট টাস্ক সেট রান করতে পারবেন।
Preferences > Window Groups খুলে Gear আইকনে ক্লিক করলে উইন্ডো গ্রুপ ইম্পোর্ট, এক্সপোর্ট, বা ডিলিট করা যাবে। অন্য অ্যাপ্লিকেশন উইন্ডো থাকলে উইন্ডো গ্রুপকে আলাদা ডেস্কটপ ওয়ার্কস্পেসে অ্যাসাইন করুন ডিসট্রাকশন এড়াতে।
ডিফল্ট শেল সেটআপ করুন
macOS-এর ডিফল্ট লগইন শেল হলো bash শেল। কিন্তু এতে আরও অনেক শেল থাকে: /bin/bash, /bin/csh, /bin/zsh, /bin/ksh, এবং আরও। ইউনিক্স এন্থুসিয়াস্টরা zsh (বা Z) শেল পছন্দ করে কারণ এতে bash শেলের চেয়ে অনেক বেশি ফিচার এবং দर्जনো প্লাগইন সাপোর্ট থাকে।
আপনি যদি নতুন হন, ফিলহাল ডিফল্ট bash শেলে থাকা ঠিক। কিন্তু দরকার पड़লে সেগুলো কীভাবে স্যুইচ করতে হয় সেটা জানা উচিত।
আপনি কোন শেল ব্যবহার করছেন তা বের করুন
আপনি কোন শেল ব্যবহার করছেন তা জানতে এই কমান্ড টাইপ করুন:
echo $0
টার্মিনাল আপনাকে শেলের নাম দেখাবে, হাইফেনের পরে।
লগইন শেল চেঞ্জ করুন
আপনার ইউজার একাউন্টের ডিফল্ট শেল চেঞ্জ করতে System Preferences > Users & Groups-এ যান। লক আইকনে ক্লিক করে অ্যাডমিন কردেনশিয়াল দিন। তারপর লিস্ট থেকে আপনার নামে রাইট-ক্লিক করে Advanced Options বেছে নিন।
দেখানো ডায়লগ উইন্ডোতে Login shell-এর নিচের অপশন চেঞ্জ করুন। এর জন্য ম্যাক রিস্টার্ট করার দরকার নেই; শুধু টার্মিনাল সেশন কুইট করে রিজিউম করুন নতুন শেলে শুরু করতে।
যেকোনো ইউজার একাউন্টের জন্য টার্মিনালের ডিফল্ট শেল চেঞ্জ করতে Terminal > Preferences বেছে নিন এবং টুলবারে General ক্লিক করুন। Shells open with-এর পাশে Command (complete path) সিলেক্ট করুন এবং আপনার নতুন শেলের পাথ ফিল্ডে দিন।
কমান্ড প্রম্পট কাস্টমাইজ করুন
ডিফল্ট কমান্ড লাইন প্রম্পট প্রতিবার টার্মিনাল খোলার সময় একই ইনফরমেশন দেখায়। অনেক স্পেশাল ক্যারেক্টার সিকোয়েন্স আছে যা প্রম্পট ডিফাইন করার জন্য ব্যবহার করলে আকর্ষণীয় ডেটা দেখাতে পারে।
প্রম্পটের চেহারা এনভায়রনমেন্ট ভেরিয়েবল $PS1-এ স্টোর থাকে। আপনি যখন টাইপ করবেন:
echo $PS1
ফলাফলটি শেল প্রম্পটের ডিফল্ট সেটিংস অনুযায়ী স্ট্রিং-কোডেড এই ফরম্যাটে আসবে:
\h:\W \u\$
- \h হোস্ট কম্পিউটার নাম রিপ্রেজেন্ট করে
- \W কারেন্ট ওয়ার্কিং ডিরেক্টরি
- \u কারেন্ট ইউজার
macOS-এ .bash_profile এ শেল কীভাবে দেখাবে এবং বিহেভ করবে সেটা নিয়ে অনেক প্রেফারেন্স থাকতে পারে। .bash_profile-এ করা কাস্টমাইজেশন শুধু শেল সেশনের জন্য প্রযোজ্য, শেল স্ক্রিপ্টের জন্য নয়। .bash_profile nano-তে এডিট করতে টাইপ করুন:
nano ~/.bash_profile
নতুন লাইনে PS1="..." যোগ করুন। উদ্ধৃতি চিহ্নের মাঝপথে প্রম্পট কাস্টমাইজ করার জন্য ক্যারেক্টার সিকোয়েন্স দিন। Bash ডকুমেন্টেশন ম্যানুয়ালে প্রম্পট স্পেশাল ক্যারেক্টারের কমপ্রিহেনসিভ লিস্ট আছে। উদাহরণস্বরূপ:
PS1="\!\d\u\$"
- ! এই কমান্ডের হিস্টরি নম্বর রিপ্রেজেন্ট করে
- \d তারিখ weekday/month/date ফরম্যাটে
- \u ইউজারনেম
- $ ইফেক্টিভ UID
সিকোয়েন্স টাইপ করলে Control + O চাপুন নতুন ইনফরমেশন লিখতে। তারপর Control + T চাপুন .bash_profile ফাইলে সেভ করার জন্য। টার্মিনাল কুইট করে রিলঞ্চ করুন পরিবর্তন দেখতে।
একটি প্রম্পট সিকোয়েন্স যা আমি পছন্দ করি:
PS1="\w \! \$"
এটি ট্রাই করুন এবং দেখুন পছন্দ হয় কিনা। মাল্টি-ইউজার সিস্টেমে হোস্টনেম, ইউজারনেম, bash ভার্সন, কমান্ড হিস্টরি নম্বর, এবং আরও ইনফরমেশন যোগ করতে পারেন।
কিছু টার্মিনাল অল্টার্নেটিভ ট্রাই করুন
টার্মিনাল অ্যাপ দশক ধরে ডিফল্ট কমান্ড লাইন ইন্টারফেস। আপনি নович হন বা দীর্ঘদিন টার্মিনাল ব্যবহার করছেন, এই কাস্টমাইজেশন আপনাকে আরও প্রোডাক্টিভ করবে। অধিকাংশ অ্যাপলের অ্যাপের মতো টার্মিনাল নতুন ব্যবহারকারীদের অ্যাকসেসিবিলিটি এবং ডেভেলপারদের পাওয়ার ফিচারের মাঝপথে बैলেন্স বজায় রাখে।
কমান্ড লাইনের পাওয়ার ইউজার बनতে আরও ফিচার দরকার: স্প্লিট-পেন সাপোর্ট, অটোকমপ্লিট সাজেশন, সার্চ, পেস্ট হিস্টরি, ইত্যাদি। আপনার ওয়ার্কফ্লোতে ফিট হওয়া এই উপযোগী টার্মিনাল অল্টার্নেটিভগুলো চেক আউট করুন।