find -printf funziona

2

Sto provando a utilizzare uno script per chiamare la dimensione del file di confronto. Sfortunatamente la versione di find sul mio Mac non supporta l'opzione -printf . Qualche suggerimento?

    
posta acornblue 01.02.2015 - 18:47
fonte

2 risposte

2

Dovresti considerare di installare GNU find usando homebrew .

Per installare homebrew devi solo digitare quanto segue nel tuo terminale:

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

Quindi installa findutils digitando:

brew install findutils

Quindi la tua find versione supporterà -printf e dovrebbe essere l'ultima:

$ 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)
    
risposta data 01.02.2015 - 19:10
fonte
1

Utilizza l'opzione exec con "wc -c" per le dimensioni in byte o "du" per i blocchi del disco:

$ 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~
    
risposta data 01.02.2015 - 19:30
fonte

Leggi altre domande sui tag