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.