find . -name "*.tif" -type 'f' -size -160k -delete
Виконайте команду, не -delete
попередньо перевіряючи, чи знайдено правильні файли.
Зверніть увагу на -
раніше 160k
. Всього 160k
означає рівно 160 кілобайт. -160k
означає менше 160 кілобайт. +160k
означає більше 160 кілобайт.
В -type 'f'
змушує команду діяти тільки на файли і пропускати каталоги. це дозволить уникнути помилок, якщо шлях містить папки з іменами, які відповідають шаблону *.tif
.
Якщо ви хочете , щоб фільтрувати розмір в байтах (як в 160 байт замість 160 кілобайт) , то ви повинні написати це: 160c
. Якщо ви просто пишете, 160
це буде інтерпретуватися як 160 * 512 байт. Це дивна вимога POSIX. Детальніше читайте тут: https://unix.stackexchange.com/questions/259208/purpose-of-find-commands-default-size-unit-512-bytes