मैं किसी निर्देशिका की प्रतिलिपि बनाने के लिए cp का उपयोग कैसे कर सकता हूं लेकिन लिनक्स में एक निश्चित उप निर्देशिका को अनदेखा करता हूं


9

हार्ड डिस्क की समस्या के कारण मैं एक हार्ड डिस्क से दूसरे में एक विभाजन को स्थानांतरित करने की कोशिश कर रहा हूं। मैं ऐसा करने के लिए http://www.ibm.com/developerworks/library/l-partplan.html लेख का अनुसरण कर रहा हूं । नकल वाले हिस्से में मैं एक विशेष उप निर्देशिका को अनदेखा करना चाहूंगा। मैं यह कैसे पूरा कर सकता हूं कि नकल करते समय मुझे अपने स्वामी समूह और समय की मोहर को संरक्षित करना होगा। लगभग 700 जीबी डेटा है जिसे किसी विशेष उपनिर्देशिका की अनदेखी न करने पर कॉपी करने की आवश्यकता है।

जवाबों:


11

rsync -ax --exclude [relative path to directory to exclude] /path/from /path/to

आप (या नहीं) का उपयोग करने के लिए चाहते हो सकता है --del। मैनुअल पेज की जाँच करें।


हाँ, जो चाल चली। यह काम करता है ..
पी रॉय

2

आम तौर पर मैं cpioनिम्नानुसार उपयोग करता हूं ,

cd source_dir; find . -depth | cpio -pdmv dest_dir

और चूंकि यह एक पाइपलाइन है आप बीच में "घटाव फिल्टर" डाल सकते हैं।

cd sourcedir; find . -depth | grep -v exclude_dir | cpio -pdmv dest_dir

या आप इसे कई चरणों में विभाजित कर सकते हैं,

cd source_dir; find . -depth > files.lst
gedit files.lst  # (take out the offending directory and files and save back to files.lst)
cpio -pdmv dest_dir < files.lst

बेशक मैं पहले कुछ छोटे पर यह परीक्षण करूँगा, लेकिन आपको यह विचार मिलेगा।


0

आप एक सरल बैश स्क्रिप्ट को एक लूप के साथ लिख सकते हैं जो उस निश्चित पथ को अनदेखा करने के लिए जिसे आप कॉपी नहीं करना चाहते हैं और बाकी की प्रतिलिपि बनाएँ। एक और समाधान हमारे लिए नियमित अभिव्यक्ति हो सकता है। आप यहाँ bash scripting पर पढ़ सकते हैं -> http://tldp.org/LDP/Bash-Beginners-Guide/html/Bash-Beginners-Guide.html Regex tutorial यहाँ -> http: www. अनियमित-expressions। जानकारी /


0

क्या आप अस्थायी रूप mvसे बड़े उपनिर्देशिका को किसी अन्य स्थान पर स्थानांतरित कर सकते हैं , प्रतिलिपि बना सकते हैं, और फिर उपनिर्देशिका को पुनर्स्थापित कर सकते हैं? मैं cpऐसा करने के लिए एक सीधा विकल्प नहीं देख सकता ।


मैंने भी आदमी cp की जाँच की है cp का उपयोग करने की उपेक्षा करने का कोई तरीका नहीं है। मेरे पास उस उप निर्देशिका और mv में 550 GB डेटा है जिसमें घंटों लग सकते हैं।
पी रॉय

मैंने मान लिया कि एमवी अपेक्षाकृत कम लागत वाला ऑपरेशन होगा - डिस्क पर इसे भौतिक रूप से घुमाने के बजाय डेटा के संदर्भ को अद्यतन करना। कम से कम, मैंने हमेशा पाया है कि विंडोज में कॉपियों की तुलना में अधिक तेज है - लिनक्स फ़ाइल सिस्टम पूरी तरह से अलग तरीके से काम कर सकता है।
ऐश

उसी हार्ड डिस्क पर mv फास्ट है। लेकिन जब कोई हार्डवॉक पर एमवी करता है तो मुझे लगता है कि यह एक सीपी के समान समय लेता है।
पी रॉय

मेरा मतलब इसे कहीं बाहर ले जाने के लिए उसी हार्ड डिस्क पर स्थानांतरित करना था, फिर शेष को दूरस्थ डिस्क पर कॉपी करना, फिर बड़ी फाइल को वापस ले जाना। जब तक आप संपूर्ण डिस्क को / से कॉपी नहीं कर रहे हैं।
ऐश

0

बल्कि बदसूरत समाधान लेकिन ... क्यों न केवल निर्देशिका में सब कुछ गैर पुनरावर्ती में cp, और फिर पुनरावर्ती पर व्यक्तिगत निर्देशिका की प्रतिलिपि बनाएँ?


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