मैं हेडर फ़ाइलों को पोस्ट-प्रोसेस करने के लिए निर्देशिका को ग्लोब करना चाहता हूं। फिर भी मैं परियोजना में कुछ निर्देशिकाओं को बाहर करना चाहता हूं। अभी डिफ़ॉल्ट तरीका है ...क्या रूबी में निर्देशिका को ग्लोब करने का कोई तरीका है लेकिन कुछ निर्देशिकाओं को बाहर कर दें?
Dir["**/*.h"].each { |header|
puts header
}
अक्षम लगता है मैन्युअल रूप से प्रत्येक हैडर प्रविष्टि की जांच करने के लिए अगर यह एक बहिष्कृत निर्देशिका में है।
युक्त नामित फ़ाइलें/dir एक सरणी का निर्माण। क्या यह एक ही वाइल्डकार्ड का समर्थन नहीं करता है .glob? करना चाहते हैं ... अस्वीकार {| एफ | एफ ['**/*। tmpl.html']}। प्रत्येक {... – SimplGy
भी नहीं ... .reject { | f | File.fnmatch ('**। Tmpl.html', f) } .each {... :) – SimplGy
समझ गया, पथ मिलान की मेरी समझ गलत थी। डबल स्टार का मतलब यह नहीं है कि यह किसी भी निर्देशिका में मेल खाएगा, आपको अभी भी एक संदर्भ निर्देशिका की आवश्यकता है। काम करता है: .reject { | एफ | File.fnmatch ('../../../ मुख्य/वेबएप/**। Tmpl.html', f) – SimplGy