rm
Linux'ta gerçekleştirirken hangi dosyaların silineceğini görmek istiyorum . Çoğu komutun sadece bu bilgiyi göstermek için kuru çalıştırma seçeneği olduğu görülüyor, ancak böyle bir seçenek bulamıyorum rm
. Bu mümkün mü?
rm
Linux'ta gerçekleştirirken hangi dosyaların silineceğini görmek istiyorum . Çoğu komutun sadece bu bilgiyi göstermek için kuru çalıştırma seçeneği olduğu görülüyor, ancak böyle bir seçenek bulamıyorum rm
. Bu mümkün mü?
Yanıtlar:
Koşmak istediğini söyle:
rm *.txt
Sadece koşabilirsiniz:
echo rm *.txt
hatta sadece:
echo *.txt
Hangi dosyaların rm
silineceğini görmek için , çünkü kabuk genişleten kabuk *.txt
değil rm
.
Bunun sana yardım etmeyeceği tek zaman bunun için rm -r
.
Özyinelemeli dosya ve dizinleri kaldırmak istiyorsanız, o zaman kullanabilirsiniz find
yerine rm -r
, örneğin
find . -name "*.txt" -print
senin ne istediğini yapar, sonra eğer değiştirmek -print
için -delete
:
find . -name "*.txt" -delete
tree
.
find . -name "*.txt" -delete
tho özyinelemeli görünmüyor. Tüm dosyalar kaldırıldı, ancak listelenen dizinleri kaldırmadı-print
find . -type d -empty -delete
find
Hala dosyaları (eşdeğer ihtiva dizinleri silmez rm dir/
olmadan -r
). İlk önce dizini boşaltmanız veya bunu yapmak için uygun seçeneklerle kullanmanız find
gerekir -exec rm
. egfind . -depth -name "*.txt" -exec rm -r {} +
echo rm *.txt
Yöntemi kullanmak bir dezavantaj gibi görünüyor. Dikey bir listenin yerine sonuçları bir birleştirilmiş listede (öncekinden sonra bir dosyaya sahip uzun bir dize) sunar. Çıktının dikey bir listede gösterilmesini sağlamanın bir yolu var mı (her satırda bir dosya)? (GÜNCELLEME: find
Yöntemin istediğim şeyi yaptığını görüyorum. Bu yüzden onunla çalışacağım.)
Söyleyebilirsin:
rm -i
Etkileşimli modda çalıştırmak için, rm
her bir dosyanın silinip silinmeyeceğini onaylamanızı ister. Hangisinin etkileneceğini görmek için her bir dosyaya hayır cevabını verebilirsiniz.
ls
Kaldırılacak tüm dosyaları listelemek için kullanabilirsiniz rm
:
ls ../path/*.txt
Özyinelemeyle silinecek dosyaları görüntülemek için listeye ihtiyacınız varsa rm
, -R
bayrakla birlikte şunu kullanın ls
:
ls -R ../path/*.txt
ls */*/*.txt
-R
seçeneği.