21.09.2021

linux rm komudu ve parametreleri

Komut satırı, genel olarak grafik arayüze kıyasla daha fazla seçenek sunuyor. Ama tüm komutları ve tüm parametrelerini hatırlamak da ayrıca bir çaba gerektiriyor; ya da en azından bir blog sayfasına yazıp gerektiğinde bakmayı falan.

Silme amacıyla kullanılan rm komutunun bir sürü kullanışlı parametresi var. En basitinden başlayalım.

Bir dosyayı silmek için

# rm dosya

Sorunsuz silinirse hiçbir bilgi vermez. Ama var olmayan bir dosyayı silmeyi denersek

rm: cannot remove 'deneme2.txt': No such file or directory

veya yazma koruması olan bir dosyayı silmeye çalışırsak da 

rm: remove write-protected regular file 'filename'?

gibi bir hata mesajı alabiliriz.

Her türlü bize sildiği dosyanın bilgisini versin istersek -v (verbose) parametresini kullanabiliriz.

# rm -v dosya

Ya da yazma korumasına sahip dosyayı da silmesini istersek -f (force) parametresini kullanabiliriz.

# rm -f dosya

Birden fazla dosyayı silmek için ard arda isimleri yazabilir

# rm dosya1 dosya2 dosya3.txt dosya4.jpg dosya5.zip

ya da wildcard karakterleri kullanabiliriz.

# rm dosya*.txt

Bir klasörü içindekilerle birlikte silmek istersek -r (recursively) parametresini

# rm -r  klasor

ve boş bir klasörü silmek için de -d (directory) parametresini kullanabiliriz.

# rm -d bosklasor

Farkedilebileceği gibi silerken "Emin misini?" gibi bir soru sormaz, rm komudu. Eğer sormasını istersek -i parametresini kullanabiliriz.

# rm -i dosya1 dosya2

Birden fazla dosyayı silerken dosya sayısı kadar değil, sadece 1 kez sorsun yeter diyorsak -I (büyük i) parametresi işimizi görür.

# rm -I dosya*.txt

Hiç başıma gelmemişti ama tire karakteriyle başlayan dosyaları silmek için iki yol önerilmiş[1]. Biri 2 kez tire parametresi:

# rm -- -dosya

İkinci yol da -iv parametresi ile tam yol belirtmek:

# rm -iv /home/metin/-dosya

[1] https://bytexd.com/rm-command-in-linux/