सीपी (यूनिक्स): Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 19: Line 19:
[[ कम्प्यूटिंग | कम्प्यूटिंग]] में,<code>cp</code> विभिन्न [[यूनिक्स]] और यूनिक्स जैसे [[ऑपरेटिंग सिस्टम]] में [[कम्प्यूटर फाइल]] और [[निर्देशिका (कंप्यूटिंग)]] की प्रतिलिपि बनाने के लिए [[कमांड (कंप्यूटिंग)]] है। कमांड में ऑपरेशन की तीन प्रमुख विधियाँ हैं, जो फाइल को दूसरी फाइल में कॉपी करने के लिए, या से अधिक फाइलों को डायरेक्टरी में कॉपी करने के लिए, या पूर्ण डायरेक्टरी को दूसरी डायरेक्टरी में कॉपी करने के लिए प्रस्तुत किए गए तर्कों के प्रकार द्वारा व्यक्त किए जाते हैं।<ref>{{Cite web | url=https://www.man7.org/linux/man-pages/man1/cp.1.html | title=Cp(1) - Linux manual page }}</ref>
[[ कम्प्यूटिंग | कम्प्यूटिंग]] में,<code>cp</code> विभिन्न [[यूनिक्स]] और यूनिक्स जैसे [[ऑपरेटिंग सिस्टम]] में [[कम्प्यूटर फाइल]] और [[निर्देशिका (कंप्यूटिंग)]] की प्रतिलिपि बनाने के लिए [[कमांड (कंप्यूटिंग)]] है। कमांड में ऑपरेशन की तीन प्रमुख विधियाँ हैं, जो फाइल को दूसरी फाइल में कॉपी करने के लिए, या से अधिक फाइलों को डायरेक्टरी में कॉपी करने के लिए, या पूर्ण डायरेक्टरी को दूसरी डायरेक्टरी में कॉपी करने के लिए प्रस्तुत किए गए तर्कों के प्रकार द्वारा व्यक्त किए जाते हैं।<ref>{{Cite web | url=https://www.man7.org/linux/man-pages/man1/cp.1.html | title=Cp(1) - Linux manual page }}</ref>


यूटिलिटी निष्पादित कार्यों का विवरण देने के लिए विभिन्न कमांड लाइन विकल्प फ़्लैग को भी स्वीकार करती है। [[POSIX|पोसिक्स]] सीपी और [[GNU|जीएनयू]] सीपी दो प्रमुख विनिर्देश हैं। पोसिक्स संस्करण की तुलना में जीएनयू सीपी के पास कई अतिरिक्त विकल्प हैं।<ref>{{cite web|url=https://www.gnu.org/software/coreutils/manual/html_node/cp-invocation.html#cp-invocation|title=GNU Coreutils: cp invocation|website=www.gnu.org}}</ref>
यूटिलिटी निष्पादित ऑपरेशन का विवरण देने के लिए विभिन्न कमांड लाइन विकल्प फ़्लैग को भी स्वीकार करती है। [[POSIX|पोसिक्स]] सीपी और [[GNU|जीएनयू]] सीपी दो प्रमुख विनिर्देश हैं। पोसिक्स संस्करण की तुलना में जीएनयू सीपी के निकट कई अतिरिक्त विकल्प हैं।<ref>{{cite web|url=https://www.gnu.org/software/coreutils/manual/html_node/cp-invocation.html#cp-invocation|title=GNU Coreutils: cp invocation|website=www.gnu.org}}</ref>
 
कमांड [[ एकीकृत एक्सटेंसिबल फर्मवेयर इंटरफ़ेस |एकीकृत एक्सटेंसिबल फर्मवेयर इंटरफ़ेस]] में भी उपलब्ध है।<ref name="EFI-Shells-and-Scripting">{{cite web
कमांड [[ एकीकृत एक्सटेंसिबल फर्मवेयर इंटरफ़ेस |एकीकृत एक्सटेंसिबल फर्मवेयर इंटरफ़ेस]] में भी उपलब्ध है।<ref name="EFI-Shells-and-Scripting">{{cite web
  | url = http://software.intel.com/en-us/articles/efi-shells-and-scripting/
  | url = http://software.intel.com/en-us/articles/efi-shells-and-scripting/
Line 27: Line 28:
}}</ref>
}}</ref>
== इतिहास ==
== इतिहास ==
सीपी [[संस्करण 1 यूनिक्स]] का हिस्सा था।<ref name="reader">{{cite techreport |first1=M. D. |last1=McIlroy |author-link1=Doug McIlroy |year=1987 |url=http://www.cs.dartmouth.edu/~doug/reader.pdf |title=A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 |series=CSTR |number=139 |institution=Bell Labs}}</ref> का संस्करण सीपी बंडल्ड इन जीएनयू [[coreutils]] को Torbjorn Granlund, David MacKenzie, और Jim Meyering ने लिखा था।<ref>{{Cite web|url=https://linux.die.net/man/1/cp|title=Cp(1): Copy files/Directories - Linux man page}}</ref>
सीपी [[संस्करण 1 यूनिक्स]] का भाग था।<ref name="reader">{{cite techreport |first1=M. D. |last1=McIlroy |author-link1=Doug McIlroy |year=1987 |url=http://www.cs.dartmouth.edu/~doug/reader.pdf |title=A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 |series=CSTR |number=139 |institution=Bell Labs}}</ref> जीएनयू [[coreutils|कोरुटिल्स]] में बंडल किए गए सीपी का संस्करण टोरबॉर्न ग्रानलुंड, डेविड मैकेंज़ी और जिम मेयरिंग द्वारा लिखा गया था।<ref>{{Cite web|url=https://linux.die.net/man/1/cp|title=Cp(1): Copy files/Directories - Linux man page}}</ref>
== ऑपरेटिंग मोड ==
== ऑपरेटिंग मोड ==
cp के संचालन के तीन प्रमुख तरीके हैं। आह्वान पर कार्यक्रम में प्रस्तुत किए गए तर्कों के प्रकार और गिनती से इन तरीकों का अनुमान लगाया जाता है।
cp के संचालन की तीन प्रमुख विधियाँ हैं। आह्वान पर प्रोग्राम में प्रस्तुत किए गए तर्कों के प्रकार और गणना से इन विधियों का अनुमान लगाया जाता है।
*जब प्रोग्राम में फाइलों के पथ नामों के दो तर्क होते हैं, तो प्रोग्राम पहली फाइल की सामग्री को दूसरी फाइल में कॉपी करता है, यदि आवश्यक हो तो दूसरी फाइल बनाता है।
*जब प्रोग्राम में फाइलों के पथ नामों के दो तर्क होते हैं, तो प्रोग्राम पहली फाइल के विवरण को दूसरी फाइल में कॉपी करता है, यदि आवश्यक हो तो दूसरी फाइल बनाता है।
* जब प्रोग्राम में फ़ाइलों के पथ नामों के या अधिक तर्क होते हैं और उन तर्कों का अनुसरण करते हैं जो किसी निर्देशिका के पथ के लिए होते हैं, तो प्रोग्राम प्रत्येक स्रोत फ़ाइल को गंतव्य निर्देशिका में कॉपी करता है, ऐसी कोई भी फ़ाइल बनाता है जो पहले से मौजूद नहीं है।
* जब प्रोग्राम में फ़ाइलों के पथ नामों के या अधिक तर्क होते हैं और उन तर्कों का अनुसरण करते हैं जो किसी निर्देशिका के पथ के लिए होते हैं, तो प्रोग्राम प्रत्येक स्रोत फ़ाइल को गंतव्य निर्देशिका में कॉपी करता है, ऐसी कोई भी फ़ाइल बनाता है जो पूर्व से स्थित नहीं है।
*जब प्रोग्राम के तर्क दो निर्देशिकाओं के लिए पथ नाम होते हैं, तो सीपी स्रोत निर्देशिका में सभी फ़ाइलों को गंतव्य निर्देशिका में कॉपी करता है, आवश्यक फ़ाइलों या निर्देशिकाओं का निर्माण करता है। ऑपरेशन के इस मोड में निर्देशिकाओं की पुनरावर्ती प्रतिलिपि को इंगित करने के लिए अतिरिक्त विकल्प ध्वज, आमतौर पर ''आर'' की आवश्यकता होती है। यदि गंतव्य निर्देशिका पहले से मौजूद है, तो स्रोत को गंतव्य में कॉपी किया जाता है, जबकि गंतव्य मौजूद नहीं होने पर नई निर्देशिका बनाई जाती है।
*जब प्रोग्राम के तर्क दो निर्देशिकाओं के लिए पथ नाम होते हैं, तो सीपी स्रोत निर्देशिका में सभी फ़ाइलों को गंतव्य निर्देशिका में कॉपी करता है, आवश्यक फ़ाइलों या निर्देशिकाओं का निर्माण करता है। ऑपरेशन के इस मोड में निर्देशिकाओं की पुनरावर्ती प्रतिलिपि को इंगित करने के लिए अतिरिक्त विकल्प फ्लैग, सामान्यतः ''आर'' की आवश्यकता होती है। यदि गंतव्य निर्देशिका पूर्व से स्थित है, तो स्रोत को गंतव्य में कॉपी किया जाता है, जबकि गंतव्य स्थित नहीं होने पर नवीन निर्देशिका बनाई जाती है।


== उपयोग ==
== उपयोग ==
एक फाइल को दूसरी फाइल में कॉपी करना:
एक फाइल को दूसरी फाइल में कॉपी करना:
  cp [-fHip] [--] सोर्सफाइल टारगेटफाइल
  cp [-fHip] [--] sourcefile targetfile


किसी निर्देशिका में फ़ाइल (फ़ाइलों) की प्रतिलिपि बनाना
किसी निर्देशिका में फ़ाइल (फ़ाइलों) की प्रतिलिपि बनाना
  cp [-fHip] [--] स्रोत फ़ाइल ... लक्ष्य निर्देशिका
  cp [-fHip] [--] sourcefile... targetdirectory


एक निर्देशिका को निर्देशिका में कॉपी करना (-r या -R का उपयोग किया जाना चाहिए)
एक निर्देशिका को निर्देशिका में कॉपी करना (-r या -R का उपयोग किया जाना चाहिए)
  cp -r|-R [-fHip] [--] स्रोतनिर्देशिका... लक्ष्यनिर्देशिका
  cp -r|-R [-fHip] [--] sourcedirectory... targetdirectory


== विकल्प झंडे ==
== विकल्प फ्लैग ==
*<code>-f</code> (बल) - लक्ष्य फ़ाइल को हटाने को निर्दिष्ट करता है यदि इसे लेखन कार्यों के लिए नहीं खोला जा सकता है। निष्कासन द्वारा निष्पादित किसी भी प्रतिलिपि से पहले सीपी आज्ञा।
*<code>-f</code> (बल) - लक्ष्य फ़ाइल को हटाने को निर्दिष्ट करता है यदि इसे लेखन ऑपरेशन के लिए नहीं खोला जा सकता है। निष्कासन <code>cp</code> कमांड द्वारा की गई किसी भी प्रतिलिपि से पहले होता है।
* <code>-H</code> (डीरेफरेंस) - बनाता है सीपी आदेश सांकेतिक लिंक (सिम्लिंक) का अनुसरण करता है ताकि लक्ष्य के लिए सिमलिंक के बजाय गंतव्य में लक्ष्य फ़ाइल हो।
* <code>-H</code> (भिन्नता) - <code>cp</code> कमांड को प्रतीकात्मक लिंक (सिम्लिंक) का पालन करता है ताकि गंतव्य के निकट लक्ष्य के लिए सिम्लिंक के अतिरिक्त लक्ष्य फ़ाइल हो।
*<code>-i</code> (इंटरैक्टिव) - अधिलेखित होने वाली फ़ाइल के नाम के साथ संकेत देता है। यह तब होता है जब लक्ष्यनिर्देशिका या लक्ष्यफाइल पैरामीटर में फ़ाइल होती है जिसका नाम SourceFile या SourceDirectory पैरामीटर में निर्दिष्ट फ़ाइल के समान होता है। यदि कोई प्रवेश करता है <code>y</code> (या लोकेल के समकक्ष <code>y</code>), द सीपी आदेश जारी है। कोई अन्य उत्तर रोकता है सीपी फ़ाइल को अधिलेखित करने से आदेश।
*<code>-i</code> (इंटरैक्टिव) - अधिलेखित होने वाली फ़ाइल के नाम के साथ संकेत देता है। यह तब होता है जब लक्ष्यनिर्देशिका या लक्ष्यफाइल पैरामीटर में फ़ाइल होती है जिसका नाम SourceFile या SourceDirectory पैरामीटर में निर्दिष्ट फ़ाइल के समान होता है। यदि कोई प्रवेश करता है <code>y</code> (या लोकेल के समकक्ष <code>y</code>), द सीपी आदेश जारी है। कोई अन्य उत्तर रोकता है सीपी फ़ाइल को अधिलेखित करने से आदेश।
*<code>-n</code> (नो [[ clobbering |clobbering]] ) - गलती से किसी भी फाइल को ओवरराइट करने से रोकता है
*<code>-n</code> (नो [[ clobbering |clobbering]] ) - गलती से किसी भी फाइल को ओवरराइट करने से रोकता है
*<code>-p</code> (संरक्षित) - द <code>-p</code>ध्वज संबंधित लक्ष्य में प्रत्येक स्रोत पथ की निम्नलिखित विशेषताओं को संरक्षित करता है: अंतिम डेटा संशोधन का समय और अंतिम पहुंच का समय, स्वामित्व (केवल अगर इसे ऐसा करने की अनुमति है), और फ़ाइल अनुमति-बिट्स।
*<code>-p</code> (संरक्षित) - द <code>-p</code>फ्लैग संबंधित लक्ष्य में प्रत्येक स्रोत पथ की निम्नलिखित विशेषताओं को संरक्षित करता है: अंतिम डेटा संशोधन का समय और अंतिम पहुंच का समय, स्वामित्व (केवल अगर इसे ऐसा करने की अनुमति है), और फ़ाइल अनुमति-बिट्स।
*<code>-R</code> या <code>-r</code> (पुनरावर्ती) - निर्देशिकाओं को पुनरावर्ती रूप से कॉपी करें
*<code>-R</code> या <code>-r</code> (पुनरावर्ती) - निर्देशिकाओं को पुनरावर्ती रूप से कॉपी करें


Line 55: Line 56:
वर्तमान निर्देशिका में फ़ाइल की प्रतिलिपि बनाना:
वर्तमान निर्देशिका में फ़ाइल की प्रतिलिपि बनाना:
  cp prog.c prog.bak
  cp prog.c prog.bak
यह prog.c को prog.bak में कॉपी करता है। यदि prog.bak फ़ाइल पहले से मौजूद नहीं है, तो सीपी कमांड इसे बनाता है। यदि यह मौजूद है, तो सीपी कमांड इसकी सामग्री को prog.c फ़ाइल की सामग्री से बदल देता है।
यह prog.c को prog.bak में कॉपी करता है। यदि prog.bak फ़ाइल पूर्व से स्थित नहीं है, तो सीपी कमांड इसे बनाता है। यदि यह स्थित है, तो सीपी कमांड इसकी विवरण को prog.c फ़ाइल की विवरण से बदल देता है।


वर्तमान निर्देशिका में दो फ़ाइलों को दूसरी निर्देशिका में कॉपी करें:
वर्तमान निर्देशिका में दो फ़ाइलों को दूसरी निर्देशिका में कॉपी करें:
Line 61: Line 62:
यह फ़ाइलों को जोन्स को /home/nick/clients/jones और smith को /home/nick/clients/smith में कॉपी करता है।
यह फ़ाइलों को जोन्स को /home/nick/clients/jones और smith को /home/nick/clients/smith में कॉपी करता है।


फ़ाइल को नई फ़ाइल में कॉपी करें और स्रोत फ़ाइल से संबद्ध संशोधन दिनांक, समय और अभिगम नियंत्रण सूची को संरक्षित करें:
फ़ाइल को नवीन फ़ाइल में कॉपी करें और स्रोत फ़ाइल से संबद्ध संशोधन दिनांक, समय और अभिगम नियंत्रण सूची को संरक्षित करें:
  सीपी-पी स्मिथ स्मिथ जूनियर
  सीपी-पी स्मिथ स्मिथ जूनियर
यह स्मिथ फ़ाइल को smith.jr फ़ाइल में कॉपी करता है। वर्तमान दिनांक और समय स्टाम्प के साथ फ़ाइल बनाने के बजाय, सिस्टम smith.jr फ़ाइल को स्मिथ फ़ाइल के समान दिनांक और समय देता है। smith.jr फ़ाइल भी स्मिथ फ़ाइल की पहुँच नियंत्रण सुरक्षा को इनहेरिट करती है।
यह स्मिथ फ़ाइल को smith.jr फ़ाइल में कॉपी करता है। वर्तमान दिनांक और समय स्टाम्प के साथ फ़ाइल बनाने के बजाय, सिस्टम smith.jr फ़ाइल को स्मिथ फ़ाइल के समान दिनांक और समय देता है। smith.jr फ़ाइल भी स्मिथ फ़ाइल की पहुँच नियंत्रण सुरक्षा को इनहेरिट करती है।
Line 67: Line 68:
किसी अन्य निर्देशिका में उसकी सभी फ़ाइलों और उपनिर्देशिकाओं सहित निर्देशिका की प्रतिलिपि बनाएँ:
किसी अन्य निर्देशिका में उसकी सभी फ़ाइलों और उपनिर्देशिकाओं सहित निर्देशिका की प्रतिलिपि बनाएँ:
  cp -R /home/nick/client /home/nick/customers
  cp -R /home/nick/client /home/nick/customers
यह डायरेक्टरी क्लाइंट्स को कॉपी करता है, जिसमें इसकी सभी फाइलें, सबडायरेक्टरीज और उन सबडायरेक्टरीज की फाइलें डायरेक्टरी कस्टमर्स/क्लाइंट्स में होती हैं। कुछ यूनिक्स सिस्टम इस मोड में अलग तरह से व्यवहार करते हैं, जो निर्देशिका पथों की समाप्ति पर निर्भर करता है। का उपयोग करते हुए सीपी <code>-R /home/nick/clients/ /home/nick/customers</code> जीएनयू सिस्टम पर यह उम्मीद के मुताबिक व्यवहार करता है; हालाँकि, BSD सिस्टम पर, यह क्लाइंट डायरेक्टरी की सभी सामग्री को डायरेक्टरी क्लाइंट के बजाय कॉपी करता है। यदि स्रोत निर्देशिका का पथ . या .. (पिछला स्लैश के साथ या बिना)।
यह डायरेक्टरी क्लाइंट्स को कॉपी करता है, जिसमें इसकी सभी फाइलें, सबडायरेक्टरीज और उन सबडायरेक्टरीज की फाइलें डायरेक्टरी कस्टमर्स/क्लाइंट्स में होती हैं। कुछ यूनिक्स सिस्टम इस मोड में अलग तरह से व्यवहार करते हैं, जो निर्देशिका पथों की समाप्ति पर निर्भर करता है। का उपयोग करते हुए सीपी <code>-R /home/nick/clients/ /home/nick/customers</code> जीएनयू सिस्टम पर यह उम्मीद के मुताबिक व्यवहार करता है; हालाँकि, BSD सिस्टम पर, यह क्लाइंट डायरेक्टरी की सभी विवरण को डायरेक्टरी क्लाइंट के अतिरिक्त कॉपी करता है। यदि स्रोत निर्देशिका का पथ . या .. (पिछला स्लैश के साथ या बिना)।


फ़ाइल को किसी मौजूदा फ़ाइल में कॉपी करने के लिए मौजूदा फ़ाइल को अपडेट मोड में खोलकर निष्पादित किया जाता है, जिससे फ़ाइल इनोड को संरक्षित किया जाता है, जिसके लिए राइट एक्सेस की आवश्यकता होती है और लक्ष्य फ़ाइल में परिणाम मूल रूप से अनुमतियों को बनाए रखते हैं।
फ़ाइल को किसी वर्तमान फ़ाइल में कॉपी करने के लिए वर्तमान फ़ाइल को अपडेट मोड में खोलकर निष्पादित किया जाता है, जिससे फ़ाइल इनोड को संरक्षित किया जाता है, जिसके लिए राइट एक्सेस की आवश्यकता होती है और लक्ष्य फ़ाइल में परिणाम मूल रूप से अनुमतियों को बनाए रखते हैं।


== संबंधित यूनिक्स आदेश ==
== संबंधित यूनिक्स आदेश ==

Revision as of 19:59, 4 July 2023

cp
Original author(s)AT&T Bell Laboratories
Developer(s)Various open-source and commercial developers
Initial releaseNovember 3, 1971; 53 years ago (1971-11-03)
Written inPlan 9: C
Operating systemUnix, Unix-like, Plan 9, Inferno, KolibriOS
PlatformCross-platform
TypeCommand
Licensecoreutils: GPLv3
Plan 9: MIT License

कम्प्यूटिंग में,cp विभिन्न यूनिक्स और यूनिक्स जैसे ऑपरेटिंग सिस्टम में कम्प्यूटर फाइल और निर्देशिका (कंप्यूटिंग) की प्रतिलिपि बनाने के लिए कमांड (कंप्यूटिंग) है। कमांड में ऑपरेशन की तीन प्रमुख विधियाँ हैं, जो फाइल को दूसरी फाइल में कॉपी करने के लिए, या से अधिक फाइलों को डायरेक्टरी में कॉपी करने के लिए, या पूर्ण डायरेक्टरी को दूसरी डायरेक्टरी में कॉपी करने के लिए प्रस्तुत किए गए तर्कों के प्रकार द्वारा व्यक्त किए जाते हैं।[1]

यूटिलिटी निष्पादित ऑपरेशन का विवरण देने के लिए विभिन्न कमांड लाइन विकल्प फ़्लैग को भी स्वीकार करती है। पोसिक्स सीपी और जीएनयू सीपी दो प्रमुख विनिर्देश हैं। पोसिक्स संस्करण की तुलना में जीएनयू सीपी के निकट कई अतिरिक्त विकल्प हैं।[2]

कमांड एकीकृत एक्सटेंसिबल फर्मवेयर इंटरफ़ेस में भी उपलब्ध है।[3]

इतिहास

सीपी संस्करण 1 यूनिक्स का भाग था।[4] जीएनयू कोरुटिल्स में बंडल किए गए सीपी का संस्करण टोरबॉर्न ग्रानलुंड, डेविड मैकेंज़ी और जिम मेयरिंग द्वारा लिखा गया था।[5]

ऑपरेटिंग मोड

cp के संचालन की तीन प्रमुख विधियाँ हैं। आह्वान पर प्रोग्राम में प्रस्तुत किए गए तर्कों के प्रकार और गणना से इन विधियों का अनुमान लगाया जाता है।

  • जब प्रोग्राम में फाइलों के पथ नामों के दो तर्क होते हैं, तो प्रोग्राम पहली फाइल के विवरण को दूसरी फाइल में कॉपी करता है, यदि आवश्यक हो तो दूसरी फाइल बनाता है।
  • जब प्रोग्राम में फ़ाइलों के पथ नामों के या अधिक तर्क होते हैं और उन तर्कों का अनुसरण करते हैं जो किसी निर्देशिका के पथ के लिए होते हैं, तो प्रोग्राम प्रत्येक स्रोत फ़ाइल को गंतव्य निर्देशिका में कॉपी करता है, ऐसी कोई भी फ़ाइल बनाता है जो पूर्व से स्थित नहीं है।
  • जब प्रोग्राम के तर्क दो निर्देशिकाओं के लिए पथ नाम होते हैं, तो सीपी स्रोत निर्देशिका में सभी फ़ाइलों को गंतव्य निर्देशिका में कॉपी करता है, आवश्यक फ़ाइलों या निर्देशिकाओं का निर्माण करता है। ऑपरेशन के इस मोड में निर्देशिकाओं की पुनरावर्ती प्रतिलिपि को इंगित करने के लिए अतिरिक्त विकल्प फ्लैग, सामान्यतः आर की आवश्यकता होती है। यदि गंतव्य निर्देशिका पूर्व से स्थित है, तो स्रोत को गंतव्य में कॉपी किया जाता है, जबकि गंतव्य स्थित नहीं होने पर नवीन निर्देशिका बनाई जाती है।

उपयोग

एक फाइल को दूसरी फाइल में कॉपी करना:

cp [-fHip] [--] sourcefile targetfile

किसी निर्देशिका में फ़ाइल (फ़ाइलों) की प्रतिलिपि बनाना

cp [-fHip] [--] sourcefile... targetdirectory

एक निर्देशिका को निर्देशिका में कॉपी करना (-r या -R का उपयोग किया जाना चाहिए)

cp -r|-R [-fHip] [--] sourcedirectory... targetdirectory

विकल्प फ्लैग

  • -f (बल) - लक्ष्य फ़ाइल को हटाने को निर्दिष्ट करता है यदि इसे लेखन ऑपरेशन के लिए नहीं खोला जा सकता है। निष्कासन cp कमांड द्वारा की गई किसी भी प्रतिलिपि से पहले होता है।
  • -H (भिन्नता) - cp कमांड को प्रतीकात्मक लिंक (सिम्लिंक) का पालन करता है ताकि गंतव्य के निकट लक्ष्य के लिए सिम्लिंक के अतिरिक्त लक्ष्य फ़ाइल हो।
  • -i (इंटरैक्टिव) - अधिलेखित होने वाली फ़ाइल के नाम के साथ संकेत देता है। यह तब होता है जब लक्ष्यनिर्देशिका या लक्ष्यफाइल पैरामीटर में फ़ाइल होती है जिसका नाम SourceFile या SourceDirectory पैरामीटर में निर्दिष्ट फ़ाइल के समान होता है। यदि कोई प्रवेश करता है y (या लोकेल के समकक्ष y), द सीपी आदेश जारी है। कोई अन्य उत्तर रोकता है सीपी फ़ाइल को अधिलेखित करने से आदेश।
  • -n (नो clobbering ) - गलती से किसी भी फाइल को ओवरराइट करने से रोकता है
  • -p (संरक्षित) - द -pफ्लैग संबंधित लक्ष्य में प्रत्येक स्रोत पथ की निम्नलिखित विशेषताओं को संरक्षित करता है: अंतिम डेटा संशोधन का समय और अंतिम पहुंच का समय, स्वामित्व (केवल अगर इसे ऐसा करने की अनुमति है), और फ़ाइल अनुमति-बिट्स।
  • -R या -r (पुनरावर्ती) - निर्देशिकाओं को पुनरावर्ती रूप से कॉपी करें

उदाहरण

वर्तमान निर्देशिका में फ़ाइल की प्रतिलिपि बनाना:

cp prog.c prog.bak

यह prog.c को prog.bak में कॉपी करता है। यदि prog.bak फ़ाइल पूर्व से स्थित नहीं है, तो सीपी कमांड इसे बनाता है। यदि यह स्थित है, तो सीपी कमांड इसकी विवरण को prog.c फ़ाइल की विवरण से बदल देता है।

वर्तमान निर्देशिका में दो फ़ाइलों को दूसरी निर्देशिका में कॉपी करें:

सीपी जोन्स स्मिथ / होम / निक / क्लाइंट्स

यह फ़ाइलों को जोन्स को /home/nick/clients/jones और smith को /home/nick/clients/smith में कॉपी करता है।

फ़ाइल को नवीन फ़ाइल में कॉपी करें और स्रोत फ़ाइल से संबद्ध संशोधन दिनांक, समय और अभिगम नियंत्रण सूची को संरक्षित करें:

सीपी-पी स्मिथ स्मिथ जूनियर

यह स्मिथ फ़ाइल को smith.jr फ़ाइल में कॉपी करता है। वर्तमान दिनांक और समय स्टाम्प के साथ फ़ाइल बनाने के बजाय, सिस्टम smith.jr फ़ाइल को स्मिथ फ़ाइल के समान दिनांक और समय देता है। smith.jr फ़ाइल भी स्मिथ फ़ाइल की पहुँच नियंत्रण सुरक्षा को इनहेरिट करती है।

किसी अन्य निर्देशिका में उसकी सभी फ़ाइलों और उपनिर्देशिकाओं सहित निर्देशिका की प्रतिलिपि बनाएँ:

cp -R /home/nick/client /home/nick/customers

यह डायरेक्टरी क्लाइंट्स को कॉपी करता है, जिसमें इसकी सभी फाइलें, सबडायरेक्टरीज और उन सबडायरेक्टरीज की फाइलें डायरेक्टरी कस्टमर्स/क्लाइंट्स में होती हैं। कुछ यूनिक्स सिस्टम इस मोड में अलग तरह से व्यवहार करते हैं, जो निर्देशिका पथों की समाप्ति पर निर्भर करता है। का उपयोग करते हुए सीपी -R /home/nick/clients/ /home/nick/customers जीएनयू सिस्टम पर यह उम्मीद के मुताबिक व्यवहार करता है; हालाँकि, BSD सिस्टम पर, यह क्लाइंट डायरेक्टरी की सभी विवरण को डायरेक्टरी क्लाइंट के अतिरिक्त कॉपी करता है। यदि स्रोत निर्देशिका का पथ . या .. (पिछला स्लैश के साथ या बिना)।

फ़ाइल को किसी वर्तमान फ़ाइल में कॉपी करने के लिए वर्तमान फ़ाइल को अपडेट मोड में खोलकर निष्पादित किया जाता है, जिससे फ़ाइल इनोड को संरक्षित किया जाता है, जिसके लिए राइट एक्सेस की आवश्यकता होती है और लक्ष्य फ़ाइल में परिणाम मूल रूप से अनुमतियों को बनाए रखते हैं।

संबंधित यूनिक्स आदेश

  • cpio - संपूर्ण निर्देशिका संरचना को स्थान से दूसरे स्थान पर कॉपी करें
  • टार (कंप्यूटिंग) - फाइलों का संग्रह बनाएं
  • लिंक (यूनिक्स) - फ़ाइल या निर्देशिका के लिए लिंक बनाने के लिए सिस्टम कॉल
  • ln (यूनिक्स) - फ़ाइल या निर्देशिका के लिए लिंक बनाएँ
  • एमवी (यूनिक्स) - फ़ाइल या निर्देशिका को स्थानांतरित करें
  • आरएम (यूनिक्स) - फ़ाइल या निर्देशिका को हटा दें
  • अनलिंक (यूनिक्स) - फ़ाइल या निर्देशिका को हटाने के लिए सिस्टम कॉल
  • chmod - फ़ाइल या निर्देशिका पर मोड (उर्फ अनुमतियाँ) बदलें
  • चाउन - फ़ाइल या निर्देशिका पर स्वामित्व बदलें
  • chgrp - फ़ाइल या निर्देशिका पर समूह बदलें
  • यूयूकेपी - यूनिक्स टू यूनिक्स कॉपी
  • सुरक्षित प्रति - SSH पर सिक्योर कॉपी
  • प्रगति,[6][7] Linux टूल cp, mv, dd की प्रगति दिखाने के लिए।

यह भी देखें

संदर्भ

  1. "Cp(1) - Linux manual page".
  2. "GNU Coreutils: cp invocation". www.gnu.org.
  3. "EFI Shells and Scripting". Intel. Retrieved 2013-09-25.
  4. McIlroy, M. D. (1987). A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986 (PDF) (Technical report). CSTR. Bell Labs. 139.
  5. "Cp(1): Copy files/Directories - Linux man page".
  6. "Progress(1) - Linux man page".
  7. "प्रगति - कोरुटिल्स प्रगति दर्शक". GitHub. 14 November 2021.

बाहरी संबंध