“cp: dizini atlatma” ne demektir?

362

Aşağıdaki komutu verdim:

sudo cp ~/Transfers/ZendFramework-1.11.4-minimal/library/Zend/* ~/public_html/cmsk.dev/library/

Bunu yaptığımda, aşağıdaki iletileri almaya başladım:

cp: omitting directory 'Tag' 
cp: omitting directory 'Test' 
cp: omitting directory 'Text' 
cp: omitting directory 'TimeSync' 
cp: omitting directory 'Tool' 
cp: omitting directory 'Translate' 
cp: omitting directory 'Uri' 
cp: omitting directory 'Validate' 

ve benzeri ...

Neden bu mesajları alıyorum?

    
sordu MEM 18.04.2011 17:11

6 cevap

473

Varsayılan olarak, cp dizindeki alt dizinleri değil, yalnızca doğrudan dosyaları kopyalar. % Co_de% iletisi, belirtilen dizinin kopyalanmadığını size uyarır.

Bunu yapmak için, cp: omitting directory 'directory' (veya -r ) seçeneğini belirtin:

sudo cp -r ~/Transfers/ZendFramework-1.11.4-minimal/library/Zend/* ~/public_html/cmsk.dev/library/

manuel sayfa (komut: --recursive ) bir genel bakış içerir mevcut seçeneklerden.

    
verilen cevap Lekensteyn 18.04.2011 17:15
34

Mesaj, cp listelenen dizinleri kopyalamadığı anlamına gelir. % Co_de% için varsayılan davranış budur - açık bir şekilde belirttiğinizden veya cp kullanıp kullanmadığına bakmadan yalnızca dosyalar normal olarak kopyalanır. Dizinlerin kopyalanmasını istiyorsanız, "yinelemeli" anlamına gelen * anahtarını kullanın.

    
verilen cevap Roger Light 18.04.2011 17:15
14

Burada kontrol edilmesi gereken birkaç şey var:

  1. sudo kullanmayın. İhtiyacınız yok, zaten kendi ev dizininize bir şeyler yazma izniniz var.

  2. Menüden Gizli Dosyaları Göster / Göster'i seçerek grafik dosya yöneticisindeki gizli dosyaları ve dizinleri kolayca görüntüleyebilirsiniz. Veya Ctrl - H tuşlarına basarak.

  3. Bir dizini ve içeriğini kopyalamak için -R komutunda cp seçeneğini kullanmanız gerekir.

  4. / home giriş dizininiz değil. / ev / kullanıcı adı. Yani muhtemelen yanlış yerden kopyalamaya çalışıyorsunuz.

  5. Kabuk büyük / küçük harfe duyarlıdır, dolayısıyla ~ / downloads ve ~ / Downloads iki farklı şeydir.

verilen cevap Nikunj K. 04.10.2013 09:02
2

Şunun gibi bir dizini kopyalarken:

cp dir1 copy_of_dir1

Sadece ve sadece dir1 'nin kendisini kopyalayıp, içindeki dosyaları değil, sonunda, yapı mevcut değilken, yeni bir dizin yapısına sahip olacaksınız.

Başka bir deyişle, kopyalandıktan sonra, içeriğimin file1 , file2 , vb. Bununla birlikte, bu dosyalar kopyalanmamıştır ve bu nedenle mevcut değildir.

Bu nedenle, cp gibi görünen bu sorunu düzeltmek için dizinler kopyalanmaz ve -r seçeneğini belirtmediğiniz sürece tüm dosyaları yinelemeli olarak kopyalayana kadar bunları atlar.

    
verilen cevap Ravexina 03.07.2017 09:47
1

omitting directory yazmasının nedeni cp ve tüm kopya yardımcı programlarının, dosyaları kopyalamaya başlamadan önce kopyalanacak dosyaların ve alt dizinlerin bir listesini oluşturmasıdır. % Co_de% seçeneği eksik olduğunda, alt dizinler bu listeden çıkarılır. Bu nedenle, atlatma, kaynak ortamınızdan değil, kopya listesinden kaldırmayı ifade eder. Bunun mesajın anlamını ele aldığına inanıyorum.

    
verilen cevap endrias 24.07.2017 10:32
-1

İki dizinin 'Tag' & amp; 'Test'

'Tag' dizinini 'Test' dizinine kopyalamak isterseniz komut kullanın

$ : cp -r Tag Test (case sensitive)

Çoğunlukla Sorun, yukarıdaki kodla çözülecek ve aşağıdaki gibi bir mesaj alacaksınız

cp: omitting directory 'Tag' 
cp: omitting directory 'Test'

sonra 'Tag' dizinine bazı dosyalar ekleyin ve ardından 'Test' bölümüne kopyalayın. Aslında bende aynı sorun var ama ikinci olarak söylediğim gibi çözüldüm.

    
verilen cevap jainmiah shaik 03.07.2017 09:14

Etiketlerdeki diğer soruları oku