उन अंडरस्कोर कमांड क्या है?


10

जब मैं tab tab _टर्मिनल में होता हूं , तो बैश 206 संभावनाएं बताता है। मैंने उनमें से एक को चलाने की कोशिश की _git_rm, लेकिन कुछ भी नहीं हुआ, वे क्या हैं?

यहाँ एक स्क्रीनशॉट है:

यहाँ छवि विवरण दर्ज करें


11
type _git_rmशायद आपको बताएंगे कि यह एक फ़ंक्शन है। grep -R '_git_rm' /etc/bash_completion.d/शायद मिल जाएगा। वे कार्य आमतौर पर वे होते हैं जो पूरा करने के लिए विभिन्न पूर्ण सूची प्रदान करते हैं bash
मैनेटवर्क

@manatwork कृपया उत्तर के रूप में पोस्ट करें।
derobert

@derobert, मेरा केवल एक त्वरित संकेत प्रदान करने का इरादा था इसलिए प्रश्न के मालिक को ~ 7 घंटे बाद पोस्ट किए गए विशेषज्ञ के उत्तर से पहले कुछ मिलता है।
मैनेटवर्क

@manatwork जवाब मेरे लिए पर्याप्त है ... मैं खुद से और खोज कर सकता हूं: डी अगर आप बुरा नहीं मानते हैं, तो मैं गिल्स के anwser को स्वीकार करूंगा, हालांकि मुझे लगता है कि मुझे आपका स्वीकार करना चाहिए ..
ड्रा करें

विदड्रॉल, गाइल्स का जवाब संभवतः अनुसंधान और अनुभव पर आधारित है, जबकि मेरा रेंगने के दौरान की गई आकस्मिक टिप्पणियों पर आधारित है। कृपया उसकी बात मान लें।
मैनेटवर्क

जवाबों:


12

ये फ़ंक्शंस जिनका नाम अंडरस्कोर से शुरू होता है, प्रोग्रामेबल कम्प्लीशन इंजन का हिस्सा हैं। बैश यहाँ zsh के सम्मेलन का अनुसरण करता है, जहाँ वह फ़ंक्शन जो इसके लिए पूर्णता उत्पन्न करता somecommandहै उसे कहा जाता है _somecommand, और यदि उस फ़ंक्शन को सहायक कार्यों की आवश्यकता होती है, तो उन्हें बुलाया जाता है _somecommand_stuff

ये पूर्णता कार्य आमतौर पर उपयोगी कुछ नहीं करते हैं या यदि आप मैन्युअल रूप से कॉल करते हैं तो एक त्रुटि उठाते हैं: उनका उद्देश्य पूरा होने वाले इंजन से बुलाया जाना है।

यह एक अग्रणी अंडरस्कोर का उपयोग करने के लिए विभिन्न प्रोग्रामिंग भाषाओं में काफी व्यापक अभ्यास पर चलता है ताकि यह इंगित किया जा सके कि एक फ़ंक्शन या चर किसी तरह से लाइब्रेरी में आंतरिक है और अंत-उपयोगकर्ता (या अंत-प्रोग्रामर) के लिए अभिप्रेत नहीं है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.