কমান্ড হিস্ট্রি

আমরা যেসব কমান্ড শেলে দিই, শেল সেগুলোকে মনে রাখে। সাধারণত শেষ ৫০০ কমান্ড শেল সংরক্ষণ করে .bash_history নামে একটি বিশেষ ফাইলে। আমরা আপার এ্যারো কী চেপে একটা একটা করে কমান্ড দেখতে পারি। বা history কমান্ড দিয়ে সম্পূর্ণ লিস্টটি দেখতে পারি। তবে এই দীর্ঘ লিস্টি কমান্ডলাইনে স্বাভাবিকভাবে দেখা বেশ ঝামেলার। ভালো উপায় হল এর আউটপুট কে less কমান্ডে রিডিরেক্ট করে দেখা:

me@howtocode-pc:~$ history | less

আমরা চাইলে হিস্ট্রির মধ্যে grep দিয়ে কোনো প্যাটার্ন খুঁজে দেখতে পারি। যেমন আমরা যদি চাই সেইসব কমান্ড দেখবো যার মধ্যে /usr/bin আছে তবে লিখবো:

me@howtocode-pc:~$ history | grep /usr/bin

এর মধ্যে ৫৯৯ লাইনে আমি এই কমান্ডটি পেয়েছি:

599 ls -l /usr/bin/ > ls-output.txt

আমরা কোনো কমান্ডকে তার লাইন নম্বর দিয়েও প্রম্পটে আনতে পারি যদি চাই। যেমন উপরের এই কমান্ডটিকে ডাকতে পারি এভাবে:

me@howtocode-pc:~$ !599
ls -l /usr/bin/ > ls-output.txt

bash এর একটা অসাধারণ ফিচার হলো ইন্টারএকটিভ রিভার্স ইনক্রিমেন্টাল হিস্ট্রি সার্চ। আসুন দেখা যাক। মনে করুন, স্বাভাবিকভাবে এই আমাদের প্রম্পট:

me@howtocode-pc:~$

এবার Ctrl-r চাপুন। দেখবেন প্রম্পট এমন হয়ে গেছে:

(reverse-i-search)`':

এবার আপনি লিখতে থাকুন /usr/bin। দেখবেন প্রতিটা অক্ষর লেখার সাথে সাথে শেল তারসাথে মিলিয়ে শেষ যে কমান্ডটি এক্সিকিউট করেছে দেখাবে। আপনি এখান থেকে কপি করতে পারবেন বা এন্টার চাপলে কমান্ডটি আবার এক্সিকিউট হবে। এবার দেখা যাক হিস্ট্রি ব্যবাহারের জন্য কিছু কীবোর্ড শর্টকার্ট:

হিস্ট্রি এক্সপ্যানসন

শেল হিস্ট্রি এক্সপ্যানসন নামের এক বিশেষ ধরণের এক্সপ্যানসনের সুযোগ দেয়। যা শুরু হয় "!" চিহ্ন দিয়ে। কিছু হিস্ট্রি এক্সপ্যানসন কমান্ড দেখা যাক:

Last updated