/ / Odstrániť všetky súbory do 600 bajtov - shell, unix

Odstrániť všetky súbory pod 600 bajtov - shell, unix

Videl som otázky o tom, ako môžem odstrániť všetkysúbory s určitou veľkosťou súboru, ale žiadny z nich sa nezaoberal veľmi malými súbormi (väčšina z nich sú jednoduché súbory .txt, ktoré obsahujú 500 - 1200 znakov). Všetky riešenia, ktoré som doteraz videl, vyzerajú podobne

find . -size -1k -delete

Skúsil som použiť nasledujúce:

find . -size -600
find . -size -600b
find . -size -0.6k

Nikto z nich nefungoval, môže mi niekto povedať, ako zabezpečiť, aby táto metóda fungovala pre menšie veľkosti súborov? (Som si istý, že mi po 600 chýba iba vlečená postava)

odpovede:

5 pre odpoveď č. 1

c je špecifikátor veľkosti pre bajty, to znamená znaky. b variant, ktorý môžete premýšľať by vlastne fungoval pre bloky (každý s 512 bajtov).

Je to všetko podrobne obsiahnuté v manuále pre find:

-size n[cwbkMG]
File uses n units of space.  The following suffixes can be used:
"b"  for 512-byte blocks (this is the default if no suffix is used)
"c"  for bytes
"w"  for two-byte words
"k"  for Kilobytes (units of 1024 bytes)
"M"  for Megabytes (units of 1048576 bytes)
"G"  for Gigabytes (units of 1073741824 bytes)

1 pre odpoveď č. 2

Mali by ste používať

find . -size -600c

pre bajty