Neden komut satırından silmek GUI'den daha az zaman alıyor?


26

Bilgisayarımdan bir düzine kadar görüntüyü silerken merak ettiğim bir şey: rm -rfDirektörün içeriğine hızlı bir şekilde bakıldığında tüm görüntüler hızlı bir şekilde kayboldu. Aynı düzine kadar görüntüyü bir çöp kutusuna atıp geri dönüşüm yasağına sürüklediğimde, bazen 10 saniye veya daha uzun sürebilir.

Şimdi bunların bir kısmının GUI'nin yükünden geldiğinden ve böyle bir şey olduğundan eminim ve bazıları, dosyanın geri dönüşüm kutusuna yerleştirilmişse bir biçimde hala "var olduğu" olabilir, ancak başka bir şey var mı? Böyle büyük bir zaman farkı hesaplar ? "Rm" ve "delete" sadece temelde farklı komutlar mıdır, bu yüzden elmaları ve portakalları karşılaştırmaya çalışıyorum.


1
Pencerelerde de geçerlidir, muhtemelen aşağıda belirtilen sebeplerden dolayı.
Chris H,

Yanıtlar:


38

Haklı olarak fark ettiğiniz gibi GUI dosyaları "silmek" ten daha fazlasını yapar.

$ rm -rf 

sadece içinde bulduğu dosyaları ve klasörleri silen klasörlere yeniden girer.

GUI ilk önce tüm ağacı tarar ve orada ne olduğunu hesaplar (bu yüzden güzel barı çizmek için ne kadar yapması gerektiğini bilir), daha sonra dosyaları tekrar o anki konumlarından bir yere taşıyarak ağaç içerisinde tekrarlar. çöp kutusu, kendi GUI'niz için dosyalar olabilir. Bu işlem, önce yeni bir benzersiz dosya adı oluşturmak, dosyayı çöp kutusu klasörüne bağlamak, ardından geçerli klasörden bağlantısını kaldırmak ve dosyaların nereden geldiğini bir dizini güncellemek için daha uzun sürer; sadece bir tane yerine birçok işlem.

Örneğin, Gnome 3'te dosyalar konuma taşınır:

~/.local/share/Trash/files/<filename>[.<version>]

filenameOrijinal dosya adı nerede versionve dosyanın benzersiz olduğundan emin olmak için artan bir sürüm numarasıdır (ilk dosya örneğinde sürüm numarası yoktur). Bununla ilişkili .trashinfo, klasörde depolanan bir dosyadır:

~/.local/share/Trash/info/<filename>[.<version>].trashinfo

Bu dosya, silmeden önceki dosyanın orijinal yolunu ve ayrıca bu dosyanın silindiği tarih ve saati içerir.

Sildiğiniz ağaçtaki her bir dosyada gerçekleştirilmesi gereken tüm bu ekstra işlemler, çöp kutusundan herhangi bir dosyayı geri yükleyebildiğinizden ve aynı adlı dosyaları aynı klasörden silebildiğinizden emin olun. Aynı yerde ve hala önceki sürümleri geri yükleyin.

Bunların hiçbiri basit rmveya mvkomut ile yapılmaz .


1
Hey, bütün yorumları kim sildi? Sadece bu cevabın yanlış olabileceğini düşündük. En azından trash-cliözyinelemeli görünmüyor. Bir klasörü silerken, Gnome 3 gerçekten .trashinfoher alt klasör ve içerdiği tüm dosyalar için yinelenen bir dosyayı yerleştirir mi?
mb21

Sanırım onlar için fazla kabadayı oldu! ;-)
Jordan Plahn
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.