Linux cp -R kullanılırken dosyalar ve dizinler hangi sırayla kopyalanır?


12

Aşağıdaki komutu yürütürsem:

cp -R /myfiles /mydestination

Birden myfilesfazla alt dizin ve dosya varsa, hangi sırayla kopyalanacaktır?

Örneğin, dizinler adlandırılabilir 0123a, 9993c, myfolder, xfolder.

Alfabetik sırayla VEYA tarih düzeninde VEYA lsanlayabildiğim kadarıyla standart bir komut kullanırken göründükleri sırayla kopyalanmazlar , bu yüzden gerçekte siparişi ne belirler?

Düzenleme: Kopyalama komutu boyunca durmadan önce ne kadar yaptığını belirlemek için cp komutunun kullandığı sırayı belirlemeye çalışıyorum. Örneğin, 4 dizinden 3'ünün başarıyla kopyalandığını belirleyebilmeyi umuyordum.


lsKomutun , dizin içeriklerini göstermeden önce varsayılan olarak sıraladığını unutmayın . Tarafından yazdırıldığını gördüğünüz lsgerçek dizin numaralandırma sırası değil.
JdeBP

1
ls -USıralanmamış dizin sırasını almak için kullanın . Bu, kullanılan sıra olmalıdır cp. İlerleme, düzen vb. Üzerinde daha fazla kontrole ihtiyacınız varsa, belki de cpbu iş için bir araç değildir.
Daniel Andersson

Yanıtlar:


2

Dosya sisteminde depolanma / iade edilme sırası. "Sıralanmamış" dosya sistemleri için bu genellikle oluşturma sırasıdır. "Sıralı" dosya sistemleri (ör. Ext3 / 4 ile dir_index) için bu, dosya sistemi dizininde kullanılan sıra olacaktır.


Dizinsiz dosya sistemi biçimleri için, dizin girişlerini silip oluştururken, bundan biraz daha karmaşıktır. (-:
JdeBP

12

Tam olarak aynı sorunu yaşadık. USB sürücülere ve USB sürücülerden büyük miktarda veri kopyalıyoruz ve işlemin ne kadar tamamlandığını söyleyememek can sıkıcı. Bunun yerine RSYNC kullanmaya başladık.

Kullanmak yerine cp -Rv /source /destination

Bunun yerine bunu kullanın rsync -av /source /destination

Artık tüm klasörleriniz ve içerikleriniz alfabetik sırayla işlenecek ve dosya kopyasının nasıl ilerlediğini kolayca görebilirsiniz.

Çevrimiçi yedekleme web sitemizde bu çözümün tam bir açıklaması var .

Moderatörler lütfen dikkat: Bunu daha önce bir kez yayınladım, ancak belki de cevaba yeterince ayrıntı eklemediğimden veya bağlantıdan dolayı silindi. Belki bu daha ayrıntılı cevabı kabul edersiniz.

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.