আমার /etc/bash.bashrc(উবুন্টু 14.04.4 এলটিএস) এ এই টুকরোটি রয়েছে :
# if the command-not-found package is installed, use it
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then
function command_not_found_handle {
# check because c-n-f could've been removed in the meantime
if [ -x /usr/lib/command-not-found ]; then
/usr/lib/command-not-found -- "$1"
return $?
elif [ -x /usr/share/command-not-found/command-not-found ]; then
/usr/share/command-not-found/command-not-found -- "$1"
return $?
else
printf "%s: command not found\n" "$1" >&2
return 127
fi
}
fi
দেখে মনে হচ্ছে আপনার command_not_found_handleফাংশনটি ওভাররাইট করা উচিত । আমি জানি না command-not-foundএটির জন্য প্যাকেজটির প্রয়োজন কি না ; আমি অনুমান করি না তবে আমি ভুল হতে পারি।
উদাহরণ:
function command_not_found_handle { echo BOOM! ; }
ফলাফল:
$ foo12345
BOOM!
$ echo "echo is valid command"
echo is valid command
$ agrgokdnlkdgnoajgldfnsdalf grhofhadljh
BOOM!
$ cat /etc/issue
Ubuntu 14.04.4 LTS \n \l
$ catt /etc/issue
BOOM!
প্রত্যাবর্তন করতে (দ্রুত এবং নোংরা):
# Assuming you haven't modified /etc/bash.bashrc
. /etc/bash.bashrc
# Quick and dirty, because if your ~/.bashrc or ~/.bash_profile //
# overwrites some settings from /etc/bash.bashrc //
# you need to source them again.
# Things may get complicated, I won't cover all the ifs here.
# Logout and login again for the clean start.
/etc/bash.bashrcসমস্ত ব্যবহারকারীর জন্য "কমান্ড পাওয়া যায়নি" আচরণ পরিবর্তন করতে সংশোধন করুন । আপনার নিজের নির্ধারণ command_not_found_handleমধ্যে ~/.bashrcএটি শুধুমাত্র আপনার জন্য কাজ করা। অথবা যে কোনও সময় আপনার হ্যাক সক্ষম এবং অক্ষম করতে যথাযথ ফাংশন সংজ্ঞা সহ দুটি ফাইল লিখুন। গুরুত্বপূর্ণ: ফাইলগুলি চালাবেন না, তাদের উত্সটি এই জাতীয় করুন:
. ~/.hack_enable
. ~/.hack_disable
যেখানে .hack_enableআপনার ফাংশনটিকে সংজ্ঞায়িত করে, .hack_disableমূলটিতে ফিরে যায় (আমার উত্তরের প্রথম কোডব্লক থেকে বা আপনার ক্ষেত্রে ঠিক কী অনুরূপ কিছু রয়েছে)।
scriptযদিcommandব্যর্থ হয়, তাহলে ব্যবহার করুন:command || script।