Bir dizini ve tüm içeriğini nasıl kaldırırım?


141

Bash olarak tek bildiğim bu

rmdir directoryname

dizini kaldıracak, fakat sadece boşsa. Alt dizinleri kaldırmaya zorlamanın bir yolu var mı?

Yanıtlar:


216

Aşağıdaki komut sizin için yapacak. Ancak dikkatli olun.

rm -rf directoryname

52
"-f", bazı sağlık kontrollerini geçersiz kılan ve soran "--force" dir. Başlamak için daha güvenli bir komut olacaktır rm -r directoryname.
Jim Paris,

Nedense rm: invalid option -- rrm -r <directoryname> ile bir dizini silmeye çalışırken hata alıyorum.
Sunspawn

@ Sunspawn Durumda olup olmadığını görmek için bu ilgili soruyu kontrol edin .
Marc.2377,

1
@JimParis "Daha güvenli" kelimesinin göreceli olduğunu düşünüyorum. Uzak bir bilgisayarda çalıştırmak için bir komut dosyası yazdığınızı varsayalım. Bu komut dosyasının bir dizini kaldırması gereken bir komutu var. Burada, rm -rf directorynamekodunuzun yürütmeyi duraklatmasını istemezsiniz, çünkü kullanıcı girişi için beklediğiniz için coz kullanmak daha güvenli olacaktır. Elbette, dizini silmenin zarar vermeyeceğinden emin olmalısınız.
John Red,

7

eğer rm -rf directorynamesizi başarısız kullanmayı deneyin rm -R -f directorynameveya rm --recursive -f directoryname.

Bunlarla ilgili herhangi bir şansınız yoksa, rm'yi yeniden kurmayı veya mermileri değiştirmeyi düşünmelisiniz.


Bunlar rm man sayfamda mevcut olan seçeneklerdi, seçeneklerimi man rmyinelemeli silme ve kuvvet seçenekleri üzerine görüntülemek için yazarak aradım .
saterHater 11:15

Senin mu rmadam sayfa listesi -r? Bu ne işe yarıyor? (Yalnızca deneme amacıyla oluşturduğunuz bir dizinde, yalnızca sahte dosyalarda (ve belki de alt dizinlerde) deneyin.) Hangi işletim sistemini kullanıyorsunuz?
G-Man

Not: Eğer rm -rişe yaramazsa, bu bir işletim sistemi sorunudur, kabuk sorunu değil. (Kesinlikle konuşursak, kullandığınız sürümle ilgili bir sorun olacaktır; rmbu nedenle rm, rmbaşka bir dizinde başka bir dizinde zaten farklı bir sürümün olup olmadığını görmek için sisteminizi farklı bir sürümünü yükleyerek veya sisteminizde arayarak çözebilirsiniz. /bin.)
G-Man

Ah doğru. Ubuntu'da olduğumu söylemeyi unuttum 14.04 man rmTerminalimde koştuğumda , bana lessmetin görüntüleyicili bir metin dosyası verdi . Ben bir bütün olan bir girintili girişi bulunan kaydırılan -R ve --recursive seçenekleri ile cozied -r bu argümanlar tüm özdeş olduğunu belirten, opsiyon.
saterHater

1
düzenleme: denedinizsudo rm -r directoryName mi? Temel komutların yazılı olmayan kuralları, -rbir programın dosya sisteminizdeki her dosyada tekrarlı olarak çalışmasını sağlar (seçtiğiniz yeri başlayarak başlar!) Ve -f tehlikeli olsa bile, işleri zorla yapar . 'cd', 'mv', 'ls' çoğunlukla bu prensibi doğrular. ls -r /Bir duzie cp -rf / /dev/nullolacak ve dosya sisteminizdeki her şeyi imha edecek. <- Asla bu komutu çalıştırma!
saterHater 11:15
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.