आम तौर पर, एक फ़ाइल की प्रतिलिपि बनाने के लिए, आप इसका उपयोग करेंगे
cp
आदेश, स्रोत फ़ाइल और गंतव्य निर्देशिका से लिंक:
cp ~/Documents/FileToBeCopied.txt ~/TextFiles/
इसे दो और निर्देशिकाओं में कॉपी करने के लिए, कई लोग अलग-अलग गंतव्यों के साथ दो बार कमांड चलाएंगे:
cp ~/Documents/FileToBeCopied.txt ~/Dropbox/
cp ~/Documents/FileToBeCopied.txt /media/lori/MYUSBDRIVE/
echo dir1 dir2 dir3 | xargs -n 1 cp file1
यह आदेश कैसे काम करता है।
echo
आदेश सामान्य रूप से स्क्रीन पर लिखता है। हालांकि, इस मामले में, हम के उत्पादन को खिलाना चाहते हैं
echo
इनपुट के रूप में आदेश
xargs
आदेश। ऐसा करने के लिए, हम पाइप प्रतीक का उपयोग करते हैं (
|
) जो एक कमांड से दूसरे इनपुट में इनपुट के रूप में आउटपुट खिलाता है।
xargs
आदेश चलाएगा
cp
तीन बार आदेश, हर बार अगली निर्देशिका पथ को इसमें से पाइप किया जाता है
echo
के अंत तक आदेश
cp
आदेश। तीन तर्क पारित किए जा रहे हैं
xargs
लेकिन वो
-n 1
पर विकल्प
xargs
कमांड इसे एक समय में केवल उन तर्कों में से एक को जोड़ने के लिए कहता है
cp
प्रत्येक बार चलाने के लिए आदेश।
तो, पहले से हमारे उदाहरण के साथ चिपकने के लिए, तीन अलग
cp
उपरोक्त आदेशों को इस तरह के एक कमांड में जोड़ा जा सकता है:
echo ~/TextFiles/ ~/Dropbox /media/lori/MYUSBDRIVE | xargs -n 1 cp ~/Documents/FileToBeCopied.txt
cp
फ़ाइल को एक ही स्थान पर कॉपी करने के लिए आदेश, आप जोड़ सकते हैं
-i
यह पूछने का विकल्प कि क्या आप मौजूदा फाइल को बदलना चाहते हैं। हालांकि
-i
विकल्प एक इंटरेक्टिव विकल्प है (यह कारण बनता है
cp
उपयोगकर्ता से इनपुट मांगने के लिए आदेश) और आप के साथ एक इंटरैक्टिव विकल्प का उपयोग नहीं कर सकते हैं
cp
इसके साथ संयोजन के दौरान उपयोग करते समय आदेश
xargs
.)
विचार करने के लिए एक और बात यह है कि यदि आप एक बहुत बड़ी फाइल की प्रतिलिपि बना रहे हैं, तो आप नो-क्लॉबर जोड़ना चाहेंगे (
-n
) विकल्प
cp
उपरोक्त एकल आदेश में आदेश। यह विकल्प स्वचालित रूप से किसी फ़ाइल में किसी फ़ाइल में ओवरराइट होने से रोकता है यदि यह पहले से मौजूद है। यदि आप किसी नेटवर्क पर एक बहुत बड़ी फ़ाइल की प्रतिलिपि बना रहे हैं, तो यह धीमा हो सकता है और आप फ़ाइल की प्रतिलिपि बनाने और प्रतिस्थापित करने के लिए आवश्यक संसाधनों का उपयोग करना टालना चाहेंगे। निम्नलिखित आदेश जोड़ता है
-n
विकल्प, और फ़ाइल को गूंज कथन में तर्क में सूचीबद्ध किसी भी गंतव्य पर प्रतिलिपि नहीं करेगा, अगर फ़ाइल उस गंतव्य में पहले से मौजूद है।
echo ~/TextFiles/ ~/Dropbox /media/lori/MYUSBDRIVE | xargs -n 1 cp -n ~/Documents/FileToBeCopied.txt