Açıklaması şöyle. Yani - delete find komutunun sonunda veya başında olursa farklı davranır
... if you want to delete files you find with the find command, you can use the -delete flag at the end of your find code. If you put it first, it will delete everything in the folder you specify. So be careful.
-delete Delete files; true if removal succeeded. If the removal failed, an error message is issued. If -delete fails, find's exit status will be nonzero (when it eventually exits). Use of -delete automatically turns on the -depth option.
Örnek
Şöyle yaparız.find -type f -name '*abc*' -delete
delete ve empty birlikte kullanımı
Elimizde şöyle bir dizin olsun. dir4 hariç her dizin doludur, çünkü içinde alt dizin var
mkdir -p dir1/dir2/dir3/dir4
Şöyle yaparız ve tüm dizinlerin silindiğini görürüz. Çünkü delete en derinden (depth first) işleme başlar ve daha sonra yukarıya çıkar.
find dir1 -empty -delete
Açıklaması şöyle
That's possibly they've considered that it's more commonly useful to be able to delete some files and then possibly the directory containing those files if it was emptied at the same time
Hiç yorum yok:
Yorum Gönder