सवाल टर्मिनल का उपयोग कर एक अलग निर्देशिका में किसी फ़ोल्डर की सामग्री को किसी अन्य फ़ोल्डर में कैसे कॉपी कर सकता हूं?


मैं टर्मिनल का उपयोग कर किसी फ़ोल्डर की सामग्री को किसी अन्य फ़ोल्डर में कॉपी करने की कोशिश कर रहा हूं।

क्या कोई मुझे यह प्राप्त करने के लिए आवश्यक कमांड लाइन सिंटैक्स का उदाहरण प्रदान करने में सक्षम होगा?


529
2017-12-11 01:19


मूल


cyberciti.biz/faq/copy-folder-linux-command-line अधिक स्पष्ट जानकारी है। - Dilip Rajkumar


जवाब:


आप किसी फ़ोल्डर की सामग्री कॉपी कर सकते हैं /source एक और मौजूदा फ़ोल्डर में /dest आदेश के साथ

cp -a /source/. /dest/

-a विकल्प एक बेहतर रिकर्सिव विकल्प है, जो सभी फ़ाइल विशेषताओं को संरक्षित करता है, और सिम्लिंक को भी संरक्षित करता है।

. स्रोत पथ के अंत में एक विशिष्ट है cp सिंटैक्स जो सभी फाइलों और फ़ोल्डरों की प्रतिलिपि बनाने की अनुमति देता है, छिपे हुए लोगों को शामिल करता है।


802
2017-12-11 12:01



बहुत बढ़िया जवाब। अगर किसी को इस कमांड में परेशानी हो रही है तो मैं एक वास्तविक उदाहरण लिखूंगा: सुडो सीपी-ए / var / www / opencart /। / Var / www / opencart_local / - pablofiumara
@enzotib मैं "डाउनलोड / टेक्स्टटेक्स्ट" की सामग्री को "~ / .config / inkscape / एक्सटेंशन /" में कॉपी करने के लिए इस आदेश का उपयोग करने का प्रयास कर रहा हूं। अपने कमांड का उपयोग करके मैं "सीपी-ए / डाउनलोड / टेक्सटेक्स्ट /। /~/.config/inkscape/extensions/ टाइप करता हूं।" लेकिन यह काम नहीं करता है - Funzies
@Funzies: शायद आपका आदेश होना चाहिए: cp -a ~/Downloads/textext/. ~/.config/inkscape/extensions/ - enzotib
जोड़ना -p फ़ाइल अनुमतियों और टाइमस्टैम्प को संरक्षित करने के लिए ध्वज। cp -ap /var/www/original.com/images/. /var/www/new.com/images/ - Dylan Valade
@DylanValade: -a पहले से ही तात्पर्य है --preserve=all, यह तुलना में व्यापक है -p = --preserve=mode,ownership,timestamps। - enzotib


एक वैकल्पिक rsync है

rsync -r source/ destination

Rsync के फायदे हैं:

  1. प्रारंभिक सिंक के बाद, यह केवल उन फ़ाइलों को कॉपी करेगा जो बदले गए हैं।

  2. आप इसे नेटवर्क पर उपयोग कर सकते हैं, $ HOME, विशेष रूप से कॉन्फ़िगरेशन फ़ाइलों में फ़ाइलों के लिए सुविधाजनक।


97
2017-12-11 03:59



मुझे लगता है कि आपको तारांकन की आवश्यकता नहीं है। rsync -r source/ destination पर्याप्त होना चाहिए, नहीं? - Joschua
यह एक और अधिक उपयुक्त है: 'rsync -rtvp स्रोत / * गंतव्य' - shridutt kothari
- छिपी हुई फाइलों / फ़ोल्डर्स के लिए काम नहीं करता है - Nam G VU
यह छिपी हुई फाइलों की प्रतिलिपि नहीं करेगा, क्योंकि बैश विस्तारित * केवल गैर-छिपी हुई फाइल तक। @ जोशुआ द्वारा समाधान सुरक्षित है। - sauerburger
rsync छिपी हुई फाइलों सहित पूरी निर्देशिका की प्रतिलिपि बनायेगा, यदि आप पीछे / बिना * का उपयोग करते हैं rync source/ dest स्पष्ट रूप से लोगों को काम करने के लिए rsync कमांड को कस्टमाइज़ करने की आवश्यकता होगी। - Panther


आइए कहें कि आपके पास एक फ़ोल्डर है फ़ोल्डर 1 आपके में ~, के भीतर फ़ोल्डर 1 1 फ़ाइल कहा जाता है file1 और 2 फ़ोल्डर्स कहा जाता है sub1 तथा sub2 प्रत्येक के अंदर अन्य फाइलें और फ़ोल्डरों के साथ।

की सभी सामग्री की प्रतिलिपि बनाने के लिए ~/folder1 सेवा मेरे ~/new_folder1 आप उपयोग करेंगे

cp -r ~/folder1/. ~/new_folder1

new_folder1 तब से सभी फाइलें और फ़ोल्डर्स होंगे folder1

cp एक टर्मिनल का उपयोग कर प्रतिलिपि बनाने का आदेश है, -r इसे पुनरावर्ती बनाता है (इसलिए, वर्तमान निर्देशिका + वर्तमान निर्देशिका में आगे की निर्देशिका) ~/folder1 मूल फ़ोल्डर है, ~/new_folder1 मूल के अंदर फ़ाइलों / फ़ोल्डरों के लिए गंतव्य फ़ोल्डर है।


56
2017-12-11 01:23



यह छिपा फाइलों को पकड़ नहीं है - Portablejim
धन्यवाद ब्रूनो! इससे मुझे वाक्यविन्यास को समझने में मदद मिली, हालांकि मुझे इसे थोड़ा बदलना पड़ा (~ संकेत हटा रहा था)। हो सकता है क्योंकि गंतव्य फ़ोल्डर / opt में था, जो किसी अन्य फ़ाइल सिस्टम में रहता है। और छिपी हुई फाइल चीज़ को याद रखने के लिए पोर्टेबलजिम धन्यवाद! - pandisvezia
पिछली अवधि महत्वपूर्ण है। इसके बिना, कभी-कभी यह एक नई उपनिर्देशिका बना सकता है ~/new_folder1/folder1 सामग्री को कॉपी करने के बजाय। - wisbucky
क्यों नहीं cp -r ~/folder1/* ~/new_folder1 - Alex78191
@ Alex78191 [root@ home]# mkdir food [root@ home]# cd food/ [root@ food]# mkdir .fruit [root@ food]# mkdir veggies [root@ food]# touch veggies/carrots [root@ food]# touch .fruit/apple [root@ food]# ls * carrots [root@ food]# - Bruno Pereira


इसे देखो http://www.cyberciti.biz/faq/copy-folder-linux-command-line/ फ़ोल्डर की प्रतिलिपि बनाने के बारे में अधिक जानकारी के लिए। उम्मीद है की यह मदद करेगा।

cp Command

cp फ़ाइलों और निर्देशिकाओं की प्रतिलिपि बनाने के लिए एक लिनक्स कमांड है। वाक्यविन्यास निम्नानुसार है:

cp source destination
cp dir1 dir2
cp -option  source destination
cp -option1 -option2  source destination

इस उदाहरण में कॉपी करें /home/vivek/letters फ़ोल्डर और इसकी सभी फाइलें /usb/backup निर्देशिका:

cp -avr /home/vivek/letters /usb/backup

कहा पे,

-a : निर्दिष्ट गुणों को संरक्षित करें जैसे निर्देशिका फ़ाइल फ़ाइल, स्वामित्व, टाइमस्टैम्प, यदि संभव हो तो अतिरिक्त विशेषताएं: संदर्भ, लिंक, xattr, सब कुछ।

-v : समझाओ कि क्या किया जा रहा है।

-r : निर्देशिकाओं को दोबारा कॉपी करें। उदाहरण

/ Tmp / conf / tmp / बैकअप नामक फ़ोल्डर को कॉपी करें:

$ cp -avr /tmp/conf/ /tmp/backup

13
2017-11-25 05:53



सवाल यह नहीं है कि सवाल क्या है। - cybermonkey
(-R के साथ -a अनावश्यक है; gnu cp -a पर "-dr --preserve = all" जैसा ही है) - cristoper


यदि दो फ़ोल्डर्स हैं: (लिखने की अनुमति के साथ)

drwxr-xr-x 4 vimal vimal  4096 Sep  9 12:17 .
drwxr-xr-x 3 root  root   4096 Aug 18 14:35 ..
drwxrwxrwx 6 vimal vimal  4096 Sep  9 12:15 DATA
drwxrwxrwx 7 vimal vimal  4096 Sep  9 12:15 PORTAL

यदि आप पोर्टल नामक फ़ोल्डर के अंदर हैं, जहां आप किसी अन्य फ़ोल्डर की सभी सामग्री कॉपी करना चाहते हैं तो डेटा को उसी स्तर पर कहें तो आप करेंगे

vimal@vimal-D3H:/var/www/html/PORTAL$ cp -a ../DATA/. .

आपको 2 बिंदुओं पर ध्यान देना होगा। अंतिम बिंदु कहता है वर्तमान फ़ोल्डर में कॉपी करें

तथा

एक निम्नलिखित / डेटा /। कहता है कि डेटा फ़ोल्डर के अंदर सभी सामग्री कॉपी की जानी चाहिए, न कि डेटा फ़ोल्डर स्वयं।

यदि आप इस पीछे हटाना "।" से / डेटा /

तो पूरे डेटा फ़ोल्डर को पोर्टल के अंदर कॉपी किया जाएगा (जहां से आप मुकाबला कर रहे हैं)।


2
2017-09-09 10:39