मेकफ़ाइल में निम्नलिखित क्या करते हैं?@: (प्रतीक कॉलन पर) मेकफ़ाइल में क्या मतलब है?
rule: $(deps)
@:
मुझे इसे मैन्युअल में खोजने में प्रतीत नहीं होता है।
मेकफ़ाइल में निम्नलिखित क्या करते हैं?@: (प्रतीक कॉलन पर) मेकफ़ाइल में क्या मतलब है?
rule: $(deps)
@:
मुझे इसे मैन्युअल में खोजने में प्रतीत नहीं होता है।
इसका मतलब है "आउटपुट पर इस कमांड को गूंज न करें।" तो यह नियम कह रहा है "खोल कमांड :
निष्पादित करें और आउटपुट गूंज न करें।
बेशक शेल कमांड :
नो-ऑप है, इसलिए यह कह रहा है" कुछ भी नहीं करें, और न बताएं। "
क्यों?
चाल यहाँ आप दो अलग अलग वाक्यविन्यास की एक अस्पष्ट संयोजन मिल गया है कि है। मेकअप (1) वाक्य रचना @ से आरंभ होने वाला कार्रवाई का उपयोग करते हैं, जो केवल है आदेश को गूंजने के लिए नहीं। तो
जैसे नियमalways:
@echo this always happens
उत्सर्जन नहीं होगा
echo this always happens
this always happens
अब, एक नियम की कार्रवाई भाग हो सकता है :
सहित किसी भी शेल कमांड,।
$ help :
:: :
Null command.
No effect; the command does nothing.
Exit Status:
Always succeeds.
के बारे में आपने ऐसा क्यों हो सकता है उत्सुक लोगों के लिए, यह उपयोगी है अगर आप कुछ की तरह नाटक करने के लिए किया गया था चाहते हैं, तो यह है कि मेक होने के लिए नहीं करता है उत्पादन "कुछ भी नहीं: बैश मदद कहीं भी और साथ ही यह बताता है "आपके लक्ष्य के लिए किया गया।
एक उदाहरण यह है कि यदि आपके पास हमेशा एक निष्पक्ष लक्ष्य है जिसे आप हमेशा निष्पादित करते हैं, और इसमें आपके पास कमांड में सशर्त का समूह है। यदि आप शर्तों को झूठ बोलते हैं और कुछ भी नहीं किया जाता है तो आप कम से कम कुछ करना चाहते हैं।
उदाहरण के लिए (लिनक्स की पटकथा/Makefile.clean से):
__clean: $(subdir-ymn)
ifneq ($(strip $(__clean-files)),)
+$(call cmd,clean)
endif
ifneq ($(strip $(__clean-dirs)),)
+$(call cmd,cleandir)
endif
ifneq ($(strip $(clean-rule)),)
+$(clean-rule)
endif
@:
आह हे, तो यह है! –
धन्यवाद, वहाँ कहीं है कि और अधिक विस्तार में इस का वर्णन करता है? मुझे यकीन नहीं है कि "आउट-यूट" क्या है। – cdwilson
मेरे टाइपिंग का मज़ा न लें, आप किसी दिन भी पुराने रहेंगे। –
धन्यवाद, यह वास्तव में सहायक था! जब तक मैं आपका जवाब नहीं पढ़ता, मैं सोच रहा था कि '@:' कुछ मजाकिया बनावट थी (मुझे नहीं पता था कि यह दो चीजों का संयोजन था ...) – cdwilson