এই অনেক কম ক্ষতিকারক, আমার অভিজ্ঞতা অতীতে ব্যবহারকারীদের শত শত সঙ্গে কাজ উপর ভিত্তি করে:
rm () # must be a function, must require single answer for all targets
{
ls -FCsd "$@"
local reply ; echo -n 'remove[ny]? ' ; read reply
if [ "_$reply" = "_y" ] ; then
/bin/rm -rf "$@" ; else echo '(cancelled)'
fi
}
- ব্যবহারকারীদের ওয়াইল্ডকার্ডগুলি সঠিকভাবে ব্যবহার করতে প্রশিক্ষণ দেওয়া হয়, কেবল '*' নয় এবং তারপরে y / n এর উপর নির্ভর করে ফাইলগুলি নির্বাচন করতে অনুরোধ করা হয়
- সঠিক ওয়াইল্ডকার্ডগুলি ব্যবহার করার শর্তটি প্রায়শই বিপর্যয় থেকে রক্ষা পায় যখন তারা
rm
অন্য কোনও প্রসঙ্গে ব্যবহার করেছেন যার মধ্যে এই ফাংশন বা উলেস এর অভাব রয়েছে rm -i
।
- আমি ফাইলগুলি পুনরুদ্ধার করতে কম সময় ব্যয় করেছি যেখানে ব্যবহারকারীরা অনেকবার 'y' টাইপ করেছেন
- ব্যবহারকারীদের কেবল একবার প্রতিক্রিয়া জানাতে হবে - এটির ব্যবহারে তাদের তীব্র ইতিবাচক প্রতিক্রিয়া সরবরাহ করা
- কন্ট্রোল-সি কাজকে বাধা দেয় এবং কিছুই না করে রিপোর্ট করা হয়
- কোনও স্ক্রিপ্ট নয়, তাই
rm
অন্যান্য প্রোগ্রাম নিরবচ্ছিন্ন রেখে আসলটি স্পর্শকাতর।
কোড শৈলীটি বেশিরভাগই sh- সামঞ্জস্যপূর্ণ ( echo .... | tr -d '\012'
প্রাক-ব্যাশ শেলের জন্য ব্যবহার ব্যতীত ) নিজের আরও বাশ-নির্দিষ্ট করতে নির্দ্বিধায়। আমি কোডটি নিজেই ভাগ করে নেওয়ার জন্য পোস্ট করছি না, তবে এটির সাথে ব্যবহারকারীর অভিজ্ঞতা পরিবর্তন ভাগ করে নেওয়ার জন্য ।