Zoek naar bestanden waarvan de grootte groter of gelijk is aan X

Hoe kan ik bestanden groter of kleiner dan of van dezelfde grootte als een ander bestand X vinden met de opdracht find (1) , zonder awk (1) ?

0
Ik bedoel grootte van het bestand :)
toegevoegd de auteur matyyyy, de bron

2 antwoord

Ervan uitgaande dat je dit doet op Linux:

Dezelfde grootte als een ander bestand:

$ find . -size `stat --printf '%s' $other_file`c

Groter dan een ander bestand:

$ find . -size +`stat --printf '%s' $other_file`c

Kleiner:

$ find . -size -`stat --printf '%s' $other_file`c
2
toegevoegd

find(1) doesn't have a direct file size comparison tool, as it does for comparing file atime, mtime, or ctime with a reference file.

Wat u kunt doen, is vergelijkbaar, haal de grootte van het referentiebestand op voordat u find (1) aanroept:

find . -type f -size -$(stat -c %s /etc/passwd)c -ls # smaller than /etc/passwd
find . -type f -size +$(stat -c %s /etc/passwd)c -ls # larger than /etc/passwd
find . -type f -size $(stat -c %s /etc/passwd)c -ls # same size as /etc/passwd
0
toegevoegd