rsync
एक अग्रणी के साथ शुरू होने वाले वैश्विक फिल्टर नियम हस्तांतरण की जड़ के लिए लंगर डाले हुए/
हैं । मैन पेज के "INCLUDE / EXCLUDE PATTERN RULES" खंड से उद्धरण:
यदि पैटर्न / के साथ शुरू होता है, तो यह फाइलों के पदानुक्रम में एक विशेष स्थान के लिए लंगर डाला हुआ है, अन्यथा यह मार्गनाम के अंत के खिलाफ मेल खाता है। यह नियमित अभिव्यक्तियों में एक अग्रणी ^ के समान है। इस प्रकार "/ foo" या तो "foo" का नाम "स्थानांतरण की जड़" (एक वैश्विक नियम के लिए) या मर्ज-फ़ाइल की निर्देशिका (प्रति-निर्देशिका नियम के लिए) से मेल खाएगा।
आपके आदेश ( rsync ... -arv /home/ben home-ben/
) में, फ़ाइल /home/ben/foo
को स्थानांतरित कर दिया जाएगा home-ben/ben/foo
। स्थानांतरण की जड़ है home-ben
और सही फिल्टर पथ है /ben/foo
। इस प्रकार,
- मैच के लिए
/home/ben/.ccache
आपको एक फ़िल्टर पथ की आवश्यकता है/ben/.ccache
- मैच के लिए
/home/ben/build/
आपको एक फ़िल्टर पथ की आवश्यकता है/ben/build/
एक अधिक विस्तृत विवरण rsync(1)
मैन पेज के "एन्करिंग इनक्लूड / एक्जाम पैटर्न" अनुभाग में पाया जा सकता है ।
ध्यान दें कि बस अग्रणी /
को छोड़ना जरूरी नहीं है कि आप क्या चाहते हैं। उसी मैन पेज सेक्शन से फिर से कोटेशन:
एक अयोग्य "फू" पेड़ में कहीं भी "फू" के नाम से मेल खाता होगा क्योंकि एल्गोरिथ्म ऊपर से नीचे की ओर पुन: आवर्ती रूप से लगाया जाता है; यह व्यवहार करता है जैसे कि प्रत्येक पथ घटक फ़ाइल नाम के अंत में एक मोड़ प्राप्त करता है। यहां तक कि असंबद्ध "उप / फू" पदानुक्रम में किसी भी बिंदु पर मेल खाता है, जहां "उप" नामक एक निर्देशिका के भीतर एक "फू" पाया गया था। स्थानांतरण की जड़ में मेल खाने वाले पैटर्न को कैसे निर्दिष्ट करें, इसकी पूरी चर्चा के लिए ANCHORING INCLUDE / EXCLUDE PATTERNS पर अनुभाग देखें।
इस प्रकार की एक फ़िल्टर पैटर्न build/
में एक निर्माण निर्देशिका कहीं भी मेल खाएंगे /home/ben
भी, /home/ben/many/sub/directories/build/
।