Özet
rm [-f | -i] [-dIRrvWx] dosya ...
unlink [--] dosya
Açıklama
rm yardımcı programı, komut satırında belirtilen normal dosyaları veya dizin girdilerini silmeye çalışır.
Dizinler (klasörler) varsayılan olarak silinemez; dizinleri silmek için -d veya rekürsif silme için -R / -r seçenekleri kullanılmalıdır.
Eğer bir dosyanın izinleri yazmaya izin vermiyorsa ve standart girdi cihazı bir terminal ise, kullanıcıdan standart hata çıktısı (stderr) üzerinden silme onayı istenir.
Seçenekler
Aşağıdaki seçenekler mevcuttur:
-d: Diğer dosya türlerinin yanı sıra boş dizinleri de silmeye çalışır.-f: Dosya izinlerine bakılmaksızın ve kullanıcıya onay sormadan dosyaları doğrudan siler. Dosya mevcut değilse herhangi bir hata mesajı yazdırılmaz ve çıkış durumu hata olarak değiştirilmez. Bu seçenek, önceki tüm-iseçeneklerini geçersiz kılar.-i: Her dosyayı silmeden önce kullanıcıdan etkileşimli onay ister. Bu seçenek, önceki tüm-fseçeneklerini geçersiz kılar.-I: Üçten fazla dosya siliniyorsa veya bir dizin rekürsif olarak siliniyorsa bir kez onay ister.-iseçeneğine kıyasla daha az rahatsız edici olup toplu kazaları önlemek için iyi bir koruma sağlar.-P: Bu seçeneğin macOS üzerinde bir etkisi yoktur. Geriye dönük uyumluluk amacıyla korunmuştur.-R/-r: Belirtilen dizinleri altındaki tüm dosya ve alt klasörlerle birlikte rekürsif olarak siler. Bu seçenek-dseçeneğinin yeteneklerini de kapsar.-v: Ayrıntılı (verbose) modda çalışarak silinen her dosya veya dizini işlem sırasında standart çıktıya yazdırır.-W: Birleşik dosya sistemlerinde (union file system) whiteout'lar tarafından üzeri kapatılmış olan silinmiş dosyaları geri getirmeye (kurtarmaya) çalışır.-x: Bir dizin ağacını rekürsif olarak silerken, farklı disk birimlerinin bağlama noktalarını (mount points) geçmez.
[!WARNING] Kök dizin
/, geçerli dizin.veya bir üst dizin..yollarınırmile silmeye çalışmak doğrudan bir hatadır ve engellenir.rmyardımcı programı sembolik bağlantıları (symlinks) siler, bağlantıların işaret ettiği hedef dosyaları veya dizinleri silmez.
unlink Olarak Çağrıldığında
Yardımcı program unlink adıyla çağrıldığında (veya unlink syntax'ı kullanıldığında), yalnızca tek bir dosya bağımsız değişkeni sağlanabilir ve bu bir dizin olamaz. unlink(2) sistem çağrısını doğrudan yürüten bu basit modda hiçbir seçenek (flag) kullanılamaz. Ancak, olağan seçenek sonu sınırlayıcısı olan -- seçeneği isteğe bağlı olarak bağımsız değişkenden önce gelebilir.
Notlar
rm komutu, komut satırı argümanlarını çözümlemek için getopt(3) standart kütüphanesini kullanır. Bu sayede, bayrak seçeneklerinin bittiğini belirten çift tire (--) işaretini kabul eder. Bu özellik, tire işareti (-) ile başlayan dosya adlarını güvenle silebilmenizi sağlar.
Örneğin, adı tam olarak -dosyaadi olan bir dosyayı silmek için:
rm -- -dosyaadi
Aynı silme davranışı, mutlak veya göreli yollar kullanılarak da güvenle gerçekleştirilebilir:
rm ./-dosyaadi
rm /Users/kullanici/-dosyaadi
Çıkış Durumu
rm aracı, belirtilen tüm dosyalar veya dizin ağaçları başarıyla silindiyse (veya mevcut olmayan dosyalar için -f seçeneği etkinleştirilmişse) 0 değeriyle çıkış yapar. Bir hata oluşması durumunda 0'dan büyük bir değerle sonlanır.
Örnekler
Aşağıdaki örnekler kabukta (shell) çalıştırılabilecek şekilde gösterilmiştir:
foobardizinini altındaki tüm dosya ve alt klasörlerle birlikte onay istemeden zorla (-f) ve rekürsif (-r) olarak silme:rm -rf foobar[!CAUTION]
rm -rfkomutu son derece güçlü ve geri dönüşü olmayan bir silme işlemidir. Kullanırken hedef dizinin doğruluğundan kesinlikle emin olun.Adı tam olarak
-folan bir dosyayı, bir seçenek olarak algılanmasını önleyerek silme:rm -- -funlinkkomutunu kullanarak tek bir dosyayı (dizin olmamalıdır) silme:unlink rapor.txt
Ayrıca Bakınız
rmdir(1), chflags(1), unlink(1), undelete(2), unlink(2), fts(3), getopt(3), symlink(7)