इस ट्यूटोरियल में, हम बताते हैं कि Linux में cp कमांड का उपयोग करके फ़ाइलों या निर्देशिकाओं को कैसे कॉपी करें। नीचे उदाहरण शामिल हैं।
Linux ग्रह पर सबसे लोकप्रिय ऑपरेटिंग सिस्टम में से एक है और सभी Android उपकरणों का आधार है। यह ओपन-सोर्स है और Windows या macOS जैसे अन्य सिस्टम पर कुछ स्पष्ट लाभ हैं।
Linux के भीतर, काफी संख्या में विभिन्न कमांड हैं जिनका प्रोग्रामर नियमित रूप से उपयोग करते हैं।
cp कमांड क्या है?
कॉपी (cp) कमांड सभी Linux कमांड में से सबसे बुनियादी और सबसे अधिक उपयोग की जाने वाली में से एक है। यह उपयोगकर्ता को फ़ाइलों या निर्देशिकाओं को एक स्थान से दूसरे स्थान पर कॉपी करने में सक्षम बनाता है। जब फ़ाइलों को कॉपी किया जाता है, तो स्रोत फ़ाइल नाम वही रहता है, लेकिन लक्ष्य फ़ाइल नाम को यदि आवश्यक हो तो बदला जा सकता है।
cp कमांड के लिए सामान्य सिंटैक्स
इस कमांड के लिए सामान्य सिंटैक्स फॉर्म है:
cp [Options] [Source] [Destination]
cp कमांड के लिए सामान्य विकल्प
-v Verbose mode (Show Progress) -n Do not overwrite an existing fie -d Copy a link file -r/R Copy directories recursively -i Prompt before overwrite -b Make a backup of each existing destination file -p Preserve the specified attributes
फ़ाइलों और निर्देशिकाओं को कैसे कॉपी करें
नीचे, हम cp कमांड का उपयोग करके फ़ाइलों और निर्देशिकाओं को कॉपी करने के तरीकों के बारे में जानेंगे।
फ़ाइल की कॉपी कैसे बनाएं
cp कमांड का उपयोग करके फ़ाइल को कॉपी करने के लिए, उस फ़ाइल का नाम दर्ज करें जिसे आप कॉपी करना चाहते हैं उसके बाद गंतव्य।
नीचे दिए गए उदाहरण में, फ़ाइल linxscrew.txt को linxscrew_updated.txt नामक एक नई फ़ाइल में कॉपी किया गया है। cp कमांड नई फ़ाइल भी बनाता है।
cp linxscrew.txt linxscrew_updated.txt
परिणाम:
ls linxscrew.txt linxscrew_updated.txt
एकाधिक फ़ाइलों को नए स्थान पर कैसे कॉपी करें
cp कमांड का उपयोग करके एक से अधिक फ़ाइल को कॉपी करने के लिए, फ़ाइलों के नाम उसके बाद गंतव्य निर्देशिका पास करें। इस उदाहरण में, हम “linxscrew1.txt“, “linxscrew2.txt“, और “linxscrew3.txt“ नाम की तीन फ़ाइलों को कॉपी करने जा रहे हैं। हम उन्हें “/home/docs” नामक निर्देशिका से “/home/new_docs” नामक निर्देशिका में कॉपी करने जा रहे हैं। सभी फ़ाइल नामों को एक स्पेस से अलग किया जाना चाहिए।
cp /home/docs linuxscrew1.txt linuxscrew1.txt linuxscrew1.txt /home/new_docs
यह जांचने के लिए कि फ़ाइलें नए स्थान पर सही ढंग से कॉपी की गई हैं, आप नीचे दिखाए अनुसार Is कमांड का उपयोग कर सकते हैं:
ls -lh /home/new_docs
निर्देशिका कैसे कॉपी करें
cp कमांड डिफ़ॉल्ट रूप से निर्देशिका सामग्री को कॉपी नहीं करता है। इसलिए, यदि आप एक निर्देशिका को एक स्थान से दूसरे स्थान पर रिकर्सिवली कॉपी करना चाहते हैं, तो आपको cp कमांड के साथ – r विकल्प का उपयोग करना होगा। इसका परिणाम पूरी निर्देशिका, उपनिर्देशिकाओं सहित, नई लक्ष्य निर्देशिका में कॉपी होगी। निर्देशिका नाम वही रहेगा।
निम्न कमांड linuxscrew नामक पूरी निर्देशिका को, उपनिर्देशिकाओं सहित, स्थान docs से new_docs नामक स्थान पर कॉपी करेगा:
cp -r /home/docs/linuxscrew/ /home/newdocs/
एकाधिक निर्देशिकाओं को कैसे कॉपी करें
यह एकल निर्देशिका कॉपी करने के समान है और आपको एक ही कमांड का उपयोग करके एकाधिक निर्देशिकाओं को रिकर्सिवली कॉपी करने की अनुमति देता है। नीचे दिए गए उदाहरण में, हम linuxscrew_files और linuxscrew_images नामक निर्देशिकाओं को /home/all_linuxscrew_docs नामक निर्देशिका में कॉपी करना चाहते हैं।
cp -r /home/linuxscrew_files/ /home/linuxscrew_images/ /home/all_linuxscrew_docs/
विशिष्ट प्रारूप की फ़ाइलों को कैसे कॉपी करें
यदि आप Linux पर केवल विशिष्ट प्रारूप की फ़ाइलों को कॉपी करना चाहते हैं, तो आप प्रासंगिक फ़ाइल एक्सटेंशन के साथ वाइल्डकार्ड “*” का उपयोग कर सकते हैं। नीचे दिए गए उदाहरण में, हम .txt से समाप्त होने वाली सभी फ़ाइलों को लक्ष्य निर्देशिका में कॉपी कर रहे हैं, लेकिन इस विधि का उपयोग किसी भी फ़ाइल एक्सटेंशन के साथ किया जा सकता है।
cp /home/linuxscrew/*.txt /home/text_files/
मौजूदा फ़ाइल को ओवरराइट करने से कैसे बचें
यदि आप Linux में फ़ाइल कॉपी करते समय मौजूदा फ़ाइल को ओवरराइट नहीं करना चाहते हैं, तो –n विकल्प का उपयोग करें। यह लक्ष्य निर्देशिका में उस नाम की फ़ाइल की जांच करेगा और कमांड केवल तभी निष्पादित करेगा यदि उस नाम की फ़ाइल नहीं पहले से मौजूद है। यदि है, तो कमांड अभी भी निष्पादित होगा लेकिन कोई परिवर्तन नहीं किया जाएगा। नीचे दिए गए उदाहरण में फ़ाइलनाम linuxscrew.txt है।
cp -n /home/linuxscrew/linuxscrew.txt /home/all_linuxscrew_docs/
सिमलिंक फ़ाइल कैसे कॉपी करें
डिफ़ॉल्ट रूप से, कॉपी ऑपरेशन करते समय सिमलिंक बाहर रखे जाते हैं। यदि आप लिंक फ़ाइल कॉपी करना चाहते हैं तो आपको -d विकल्प का उपयोग करना होगा, जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है:
cp –d /hone/linuxscrew/linuxscrew.txt /home/all_linuxscrew_docs/