जब भी मैं rm
एक बार शेल ग्लोबिंग के साथ एक से अधिक आइटम करता हूं और यहां तक कि थोड़ी सी भी संभावना है कि पैटर्न जितना मैं इसकी अपेक्षा करता हूं उससे अधिक फैलता है, मैं हमेशा जोड़ने की याद रखने की कोशिश करता हूं -i
, लेकिन (निश्चित रूप से) मैं भूल सकता हूं और गलती से कुछ उपयोगी उड़ा सकता हूं। कुछ लोग इस समस्या को एक उपनाम के साथ हल करने की कोशिश करते हैं, जैसे कि alias rm='rm -i'
लेकिन मैं rm को हमेशा इंटरैक्टिव बनाने के विचार से नफरत करता हूं , क्योंकि तब मैं -f
हर समय उपयोग करने की आदत डालूंगा , जो स्पष्ट रूप से पूरे उद्देश्य को हरा देगा।
मैं जो करना चाहता हूं, rm
केवल तभी उपयोग -i
कर सकता हूं जब मैं ग्लोबिंग का उपयोग करता हूं, और -f
निश्चित रूप से ओवरराइड करने के लिए -i
, इसलिए मैं अभी भी पूरी निर्देशिका को सामान्य रूप से उड़ा सकता हूं rm -rf junk
।
इसलिए rm *blah*
वास्तव में होगा rm -i *blah*
लेकिन rm blah
टाइप किए गए के समान ही काम करेगा।
यदि यह अलग-अलग गोले में पूरा किया जा सकता है, तो इस बात में अंतर है, मैं एक उत्तर चुनूंगा जो केवल एक या दूसरे को कवर करने वाले उत्तरों पर बाश और ज़ीश दोनों के लिए तरीकों की आपूर्ति करता है।
नोट : मैं वास्तव में आश्वस्त नहीं हूं कि यह जरूरी एक अच्छा विचार है; मैं सिर्फ यह पूछ रहा हूं कि क्या यह संभव है। यदि आपको लगता है कि यह एक मूर्खतापूर्ण विचार है, तो मुझे आपकी राय के पीछे तर्क सुनने में बहुत खुशी होगी, लेकिन कृपया उत्तर क्षेत्र में ऐसी टिप्पणियों को पोस्ट न करें । वास्तविक उत्तर या तो मुझे बताएं कि यह कैसे करना है या यह समझाना है कि / यह क्यों संभव नहीं है (या संभवतः एक समान परिणाम प्राप्त करने के लिए एक वैकल्पिक विधि प्रदान करता है)। लेकिन अगर आप मुझे यह बताना चाहते हैं कि यह गूंगा क्यों है, तो कृपया टिप्पणी के रूप में पोस्ट करें। यदि मैं निष्कर्ष से असहमत हूं, तो भी मैं अच्छी तरह से टिप्पणी करूंगा।
noglob
aliasing noglob my-rm
और फिर my-rm को एक स्क्रिप्ट के रूप में लाभ उठा सकते हैं , जो एक ग्लोब के लिए जाँच करता है, इसका विस्तार करता है, और पास -i करता है या नहीं। यकीन नहीं है, पता नहीं zsh।
myrm
और उस स्क्रिप्ट को वह करना चाहिए जो आपको पसंद है।
rm -I
तरह से-i
ट्रिगर होता है जब तीन से अधिक फाइलें या-r
पारित हो जाती हैं। मेंbash
,Ctrl-x *
ग्लोब का विस्तार करने और इसे स्वयं निरीक्षण करने के लिए कीबोर्ड शॉर्टकट का उपयोग करें।