सामान्य फ़ोल्डरों के रूप में लक्षित करने के लिए सहानुभूति की प्रतिलिपि कैसे बनाएं


68

मेरे पास सिमिलिंक वाला एक फ़ोल्डर है:

marek@marek$ ls -al /usr/share/solr/
razem 36
drwxr-xr-x   5 root root  4096 2010-11-30 08:25 .
drwxr-xr-x 358 root root 12288 2010-11-26 12:25 ..
drwxr-xr-x   3 root root  4096 2010-11-24 14:29 admin
lrwxrwxrwx   1 root root    14 2010-11-24 14:29 conf -> /etc/solr/conf

मैं इसे ~ / solrTest पर कॉपी करना चाहता हूं लेकिन मैं सिम्लिंक से फाइल भी कॉपी करना चाहता हूं

जब मैं करने की कोशिश cp -r /usr/share/solr/ ~/solrTest

मेरे पास यहां सिमलिंक होगा:

marek@marek$ ls -al ~/solrTest
razem 36
drwxr-xr-x   5 root root  4096 2010-11-30 08:25 .
drwxr-xr-x 358 root root 12288 2010-11-26 12:25 ..
drwxr-xr-x   3 root root  4096 2010-11-24 14:29 admin
lrwxrwxrwx   1 root root    14 2010-11-24 14:29 conf -> /etc/solr/conf

जवाबों:


92
cp -Lr /usr/share/solr/ ~/solrTest

के manसाथ यूनिक्स कमांड के लिए पृष्ठ की जाँच करेंman cp

   -L, --dereference
          always follow symbolic links in SOURCE

4
मुझे "cp: -H, -L, और -P विकल्प -r विकल्प के साथ निर्दिष्ट नहीं किया जा सकता है।"
बालूपटन

3
@balupton: try -LR
pt2ph8

11

मैन पेज से:

'-L', '- dereference' - उनसे कॉपी करते समय प्रतीकात्मक लिंक का पालन करें। इस विकल्प के साथ, cp एक प्रतीकात्मक लिंक नहीं बना सकता है। उदाहरण के लिए, स्रोत ट्री में एक सिम्लिंक (नियमित फ़ाइल के लिए) को गंतव्य ट्री में एक नियमित फ़ाइल में कॉपी किया जाएगा।

तो यह वह विकल्प है जिसे आपको आज़माना चाहिए।


5
cp -r -L /usr/share/solr/ ~/solrTest

से cp(1)आदमी पेज:

  -L, --dereference
        always follow symbolic links in SOURCE

0

एक त्वरित समाधान है:

$ mkdir dest_dir
$ cp symlink_dir/* dest_dir/

दोष यह है कि आपको गंतव्य निर्देशिका पहले बनानी होगी


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