Normal klasörler olarak hedefe sembolik bağlantılar nasıl kopyalanır


68

sembolik bir klasör var:

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 dosyasına kopyalamak istiyorum ancak dosyaları link linkten kopyalamak istiyorum

denediğimde cp -r /usr/share/solr/ ~/solrTest

burada bir link vereceğim:

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

Yanıtlar:


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

manİle unix komutları sayfasını kontrol edinman cp

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

4
"Cp: -H, -L ve -P seçenekleri -r seçeneğiyle belirtilmemiş olabilir."
Balupton

3
@ balupton: deneyin -LR
pt2ph8

11

Man sayfasından:

'-L', '- dereference' - Kopyalarken sembolik bağları takip edin. Bu seçenek ile cp sembolik bir bağlantı oluşturamaz. Örneğin, kaynak ağacındaki bir sembolik bağlantı (normal dosyaya), hedef ağacındaki normal bir dosyaya kopyalanacaktır.

Bu yüzden denemeniz gereken seçenek bu.


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

Gönderen cp(1)adam sayfası:

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

0

Hızlı bir çözüm:

$ mkdir dest_dir
$ cp symlink_dir/* dest_dir/

Dezavantajı ise ilk önce hedef dizini yaratmanız gerektiğidir.


Bazı kabuklarda, bu gizli dosyaları / klasörleri kopyalamaz symlink_dir.
vmrob
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.