मैं एक निर्देशिका की प्रतिलिपि कैसे बना सकता हूं और उसी आदेश में उसका नाम बदल सकता हूं?


15

वर्तमान में, मैं इन दो आदेशों को निर्देशिका का त्वरित बैकअप बनाने के लिए चला रहा हूं। क्या दोनों कमांडों को एक में मिलाने का एक तरीका है, ताकि मैं नई निर्देशिका को एक कमांड में कॉपी और नाम बदल रहा हूं?

#cp -R /tf/Custom_App /tf/Custom_App_backups/
#mv /tf/Custom_App_backups/Custom_App /tf/Custom_App_backups/Custom_App_2017-12-21

1
cp -R /tf/Custom_App /tf/Custom_App_backups/Custom_App_2017-12-21
jesse_b

कैसे दो चीजों के लिए उपनाम या फ़ंक्शन को परिभाषित करने के बारे में;)
LinuxSecurityFreak

जवाबों:


21

आपको बस करने में सक्षम होना चाहिए

cp -R /tf/Custom_App /tf/Custom_App_backups/Custom_App_2017-12-21

हालाँकि , यदि लक्ष्य निर्देशिका पहले से मौजूद है, तो यह स्रोत पथ के अंतिम भाग को गंतव्य पथ तक बनाएगा, बनाएगा /tf/Custom_App_backups/Custom_App_2017-12-21/Custom_App, और उसके बाद शेष पेड़ की प्रतिलिपि बनाएगा ।

इसे रोकने के लिए, /tf/Custom_App/.स्रोत के रूप में उपयोग करें । बेशक, उस मामले में आप rm -r /tf/Custom_App_backups/Custom_App_2017-12-21पहले करना चाह सकते हैं , अगर आप नहीं चाहते कि पुरानी फाइलें कॉपी के बाद इधर-उधर पड़ी हों।

बीच का अंतर /some/dirऔर cp/some/dir/. में थोड़ी देर पहले चर्चा की गई थी कि कब अजीब व्यवहार किया जाता है। (डॉट) या .. (डॉट डॉट) सोर्स डायरेक्टरी हैं


.स्रोत निर्देशिका के रूप में गुजरने का एक विकल्प यह है कि -Tध्वज का उपयोग cpकरके गंतव्य को अधिलेखित करने के बजाय उसके अंदर एक नया सदस्य बनाने के लिए कहा जाए।
टोबे स्पाइट

@TobySpeight, ... GNU में cp
ilkkachu

1
/tf/Custom_app/.चाल मैं सिर्फ क्या जरूरत है।
मार्टिन बोनर मोनिका से

cp -aभी काम करता है।
flow2k

1
@ flow2k, GNU उपयोगिताओं में विशेष रूप से गैर-मानक विकल्पों का भार होता है, उनमें से कई बहुत उपयोगी होते हैं। cp -aबेशक भी FreeBSD और OpenBSD में दिखाई देता है, लेकिन यह अभी भी एक मानक विशेषता नहीं है, जो कि POSIX द्वारा निर्दिष्ट नहीं है । ( cp -Tजो पहले उल्लेख किया गया था कि एक GNUism लगता है, यह POSIX में नहीं है, और BSDs में नहीं जहां तक ​​मैं देख सकता हूं।)
ilkkachu

1

वैकल्पिक रूप से, आप इसे ऐसा कर सकते हैं:

mkdir /tf/Custom_App_backups/Custom_App_2017-12-21 # prepare the target location
cp -R /tf/Custom_app/. /tf/Custom_App_backups/Custom_App_2017-12-21 # copy only the contents

यह आपको पहले से अपने कस्टम स्थान को निर्दिष्ट करने की अनुमति देगा। इसके अलावा, ध्यान दें कि यह प्रत्यय का उपयोग करता है /.यह आपको केवल सामग्री की प्रतिलिपि बनाने और इसके युक्त फ़ोल्डर को बाहर करने की अनुमति देता है - इस मामले में यह Custom_appफ़ोल्डर है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.