2 votes

find -printf contourne le problème

J'essaie d'utiliser un script pour appeler la comparaison de la taille du fichier. Malheureusement, la version de find sur mon Mac ne prend pas en charge le -printf commutateur. Des suggestions ?

2voto

jherran Points 12554

Vous devriez envisager d'installer GNU find en utilisant maison .

Pour installer homebrew, il suffit de taper ce qui suit dans votre terminal :

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Installez ensuite findutils en tapant :

brew install findutils

Ensuite, votre find prendra en charge la version -printf et devrait être le plus récent :

$ find --version
find (GNU findutils) 4.4.2
, nc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
, o the extent permitted by law.

, nd Kevin Dalley.
Built using GNU gnulib version e5573b1bad88bfabcda181b9e0125fb0c52b7d3b
Features enabled: D_TYPE O_NOFOLLOW(enabled) LEAF_OPTIMISATION FTS() CBO(level=0)

1voto

alls0rts Points 279

Utilisez l'option exec avec 'wc -c' pour la taille en octets ou 'du' pour les blocs du disque :

$ find . -name bill\* -exec wc -c {} + 2>/dev/null
8496 ./bill
 341 ./bill.c
 274 ./bill.c~
9111 total
$ find . -name bill\* -exec du {} + 2>/dev/null   
24  ./bill
8   ./bill.c
8   ./bill.c~

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X