ব্যাশের ইতিহাসে টাইপ করা প্রকৃত আদেশগুলি পুনরুদ্ধার করা সম্ভব? যদি কমান্ডটি জড়িত থাকে (উদাহরণস্বরূপ) ইতিহাসের বিকল্প বা সংশোধক, ইতিহাসে যা দেখা যায় তা টাইপ করা কমান্ডের পরিবর্তে ফলাফল কমান্ড।
উদাহরণ দুটি। এই দুটির জন্যই, ধরুন ইতিহাসে 123 আদেশটি রয়েছেls Red*
আমি যদি
!123
ইতিহাস থেকে কমান্ড লাইন 123 ব্যবহার করতে টাইপ করি এবং এখন আমার ইতিহাসের সর্বশেষতম কমান্ডটি দেখি তবেls Red*
তার চেয়ে আমি দেখতে পাচ্ছি!123
।যদি অন্তর্নির্মিত শেল কমান্ডটি ব্যবহার করে
fc -s Red=Blue 123
ইতিহাসের দিকে তাকান, আমি তারls Blue*
চেয়ে দেখতে পাচ্ছিfc -s Red=Blue 123
একইভাবে, আমি যদি আপ-তীর ব্যবহার করি (পলায়ন ক্রম উত্পাদন করে ^[[A
) আমি প্রকৃত টাইপ করা পাঠ্যের চেয়ে প্রসারিত কমান্ড পাই।
এই সমস্ত উদাহরণে ইতিহাসের ফলাফলের প্রবেশটি আমি প্রত্যাশা করি তবে কিছু ক্ষেত্রে এটি আসল টাইপযুক্ত পাঠ্য পুনরুদ্ধার করতে কার্যকর হবে। উদাহরণস্বরূপ, উপরের উদাহরণগুলি বেশ সহজ হলেও আমি সম্ভবত একটি জটিল বিকল্প ব্যবহার করছি যা আমি সম্পাদনা করতে চাই।
আমি বুঝতে পারি যে শেলটি সূচনা করার পরে এটি আরও জটিল হবে কারণ HISTFILE
এতে কোনও তথ্য থাকে না। আমি এই ক্ষেত্রে মূল পাঠ্য পুনরুদ্ধার নিয়ে উদ্বিগ্ন নই (যদিও এটি আকর্ষণীয়)।
ls Red*
,ls Blue*
এবং!-2
তারপর কপি -!-2
এবং এটি বারবার আটকে দিন। আপনি "স্ক্রিন" নামক একটি প্রোগ্রামও দেখতে চাইতে পারেন।