trouver -printf contourner


2

J'essaie d'utiliser un script pour appeler la taille du fichier de comparaison. Malheureusement, la version de findsur mon mac ne supporte pas le -printfcommutateur. Aucune suggestion?

Réponses:


2

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

Pour installer homebrew, il vous suffit de saisir les éléments suivants dans votre terminal:

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

Puis installez findutilsen tapant:

brew install findutils

Ensuite, votre findversion supportera le -printfet devrait être la dernière:

$ 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)

1
Merci pour votre suggestion. Pour moi, homebrew ajoute 'g' à la commande de recherche.
Acornblue

@acornblue le "g" est pour GNU
the0ther Le

Oui, brasser va installer GNU findcomme gfindpar défaut. C’est une bonne chose pour ne pas casser d’autres choses qui attendent la version de mac find.
Wisbucky

1

Utilisez l'option exec avec 'wc -c' pour la taille en octets ou 'du' pour les blocs de 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~
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.