जवाबों:
पहला मिलान नियम लागू होता है, इसलिए बाहर करने .htaccess
से पहले शामिल करें .*
।
rsync -avP --include=".htaccess" --exclude=".*" . user@server:/dir
यह .htaccess
हर स्तर पर कॉपी करता है। मैं नहीं जानता कि आप क्या चाहते हैं ./.htaccess
; यदि आप केवल प्रतिलिपि के मूल में एक फ़ाइल से मेल खाना चाहते हैं, तो पैटर्न को ए से शुरू करें /
। यदि आप केवल रूट चाहते हैं .htaccess
, तो आप बस उपयोग नहीं कर सकते --include='/.htaccess' --exclude='.*'
, क्योंकि गैर-रूट किए गए नियम वास्तव में यहां पूर्वता लेता है, आपको कुछ जटिल करने की आवश्यकता है:
rsync -avP --exclude='/*/**/.htaccess' --include='.htaccess' --exclude=".*" . user@server:/dir
आगे पढ़ने: rsync फिल्टर के लिए बुनियादी सिद्धांत ।
--include
, लेकिन "./.htaccess" के सामने "./" था जो इसे मार रहा था।
.htaccess
फ़ाइल में छिपी हुई निर्देशिका है , तो आपको --include='.*/'
(मुझे लगता है) फ़ाइनल से पहले --exclude
, यहाँ