जब मैं tab tab
_
टर्मिनल में होता हूं , तो बैश 206 संभावनाएं बताता है। मैंने उनमें से एक को चलाने की कोशिश की _git_rm
, लेकिन कुछ भी नहीं हुआ, वे क्या हैं?
यहाँ एक स्क्रीनशॉट है:
जब मैं tab tab
_
टर्मिनल में होता हूं , तो बैश 206 संभावनाएं बताता है। मैंने उनमें से एक को चलाने की कोशिश की _git_rm
, लेकिन कुछ भी नहीं हुआ, वे क्या हैं?
यहाँ एक स्क्रीनशॉट है:
जवाबों:
ये फ़ंक्शंस जिनका नाम अंडरस्कोर से शुरू होता है, प्रोग्रामेबल कम्प्लीशन इंजन का हिस्सा हैं। बैश यहाँ zsh के सम्मेलन का अनुसरण करता है, जहाँ वह फ़ंक्शन जो इसके लिए पूर्णता उत्पन्न करता somecommand
है उसे कहा जाता है _somecommand
, और यदि उस फ़ंक्शन को सहायक कार्यों की आवश्यकता होती है, तो उन्हें बुलाया जाता है _somecommand_stuff
।
ये पूर्णता कार्य आमतौर पर उपयोगी कुछ नहीं करते हैं या यदि आप मैन्युअल रूप से कॉल करते हैं तो एक त्रुटि उठाते हैं: उनका उद्देश्य पूरा होने वाले इंजन से बुलाया जाना है।
यह एक अग्रणी अंडरस्कोर का उपयोग करने के लिए विभिन्न प्रोग्रामिंग भाषाओं में काफी व्यापक अभ्यास पर चलता है ताकि यह इंगित किया जा सके कि एक फ़ंक्शन या चर किसी तरह से लाइब्रेरी में आंतरिक है और अंत-उपयोगकर्ता (या अंत-प्रोग्रामर) के लिए अभिप्रेत नहीं है।
type _git_rm
शायद आपको बताएंगे कि यह एक फ़ंक्शन है।grep -R '_git_rm' /etc/bash_completion.d/
शायद मिल जाएगा। वे कार्य आमतौर पर वे होते हैं जो पूरा करने के लिए विभिन्न पूर्ण सूची प्रदान करते हैंbash
।