উত্তর:
HIST_IGNORE_SPACE বিকল্পটি ব্যবহার করুন।
setopt HIST_IGNORE_SPACE
মানুষ zshoptions
HIST_IGNORE_SPACE
ইতিহাসের তালিকা থেকে কমান্ড লাইনগুলি সরিয়ে ফেলুন যখন লাইনের প্রথম অক্ষরটি একটি স্থান হয় বা যখন কোনও প্রসারিত এলিয়াসের মধ্যে একটি শীর্ষস্থানীয় স্থান থাকে। নোট করুন যে কমান্ডটি পরবর্তী কমান্ডটি অদৃশ্য হওয়ার আগে প্রবেশ না হওয়া অবধি অভ্যন্তরীণ ইতিহাসে অবিচ্ছিন্ন থাকে, আপনাকে লাইনটি সংক্ষেপে পুনরায় ব্যবহার বা সম্পাদনা করার অনুমতি দেয়। আপনি যদি অন্য কমান্ড না দিয়ে এটিকে অবিলম্বে বিলুপ্ত করতে চান তবে একটি স্থান টাইপ করুন এবং ফিরে চাপুন।
kill -9 $$ইতিহাসে সংরক্ষণের জন্য বর্তমান টার্মিনাল সেশনে জারি করা সমস্ত কমান্ড এড়াতে সত্যিই দুর্দান্ত।
unset HISTFILEআগে আপনি কমান্ডগুলি ব্লক করতে পারেন। আপনি চান HISTFILEআপনার ইতিহাসে আদেশগুলি রাখতে আপনার পরে পুনরায় সেট করতে হবে বা একটি নতুন শেল খুলতে হবে।
জেডএসএইচ ইতিহাসে কী যুক্ত হয়েছে তার উপরে যদি আপনি আরও দানাদার নিয়ন্ত্রণ চান তবে আপনি zshaddhistoryফাংশনটি সংজ্ঞায়িত করতে পারেন .zshrc। নিম্নলিখিত সংজ্ঞাটি উপেক্ষা করার জন্য কোনও প্যাটার্ন সংজ্ঞায়িত করতে একটি রেজেক্স ব্যবহার করে:
function zshaddhistory() {
emulate -L zsh
if ! [[ "$1" =~ "(^ |^ykchalresp|--password)" ]] ; then
print -sr -- "${1%%$'\n'}"
fc -p
else
return 1
fi
}
মনে রাখবেন যে, থেকে আচরণ man zshoptsঅধীনে HIST_IGNORE_SPACEএখনও বর্তমান হল:
নোট করুন যে কমান্ডটি পরবর্তী কমান্ডটি অদৃশ্য হওয়ার আগে প্রবেশ না হওয়া অবধি অভ্যন্তরীণ ইতিহাসে অবিচ্ছিন্ন থাকে, আপনাকে লাইনটি সংক্ষেপে পুনরায় ব্যবহার বা সম্পাদনা করার অনুমতি দেয়।
সুতরাং এটি পরীক্ষা করতে, আপনাকে একটি অতিরিক্ত আঘাত করতে হবে [Enter]। এটি কমান্ডটি আউটপুট থেকে historyএবং ↑ তীর ইতিহাস উভয়ই সরিয়ে দেয় ।