Sistemi mirati: Linux e OS X. codice originale che funziona in Ubuntu 16.04 ma non in OS X, ma segue senza successo POSIX standard
gfind ~ ! -readable -prune -o -type f -name "*.tex"
dove
-
!riguarda Negazione di un primario; l'operatore unario NOT. -
-readableTODO questo non sembra essere POSIX -
-pruneè di circa Il primario deve sempre essere valutato come vero; causerà find non discendere il percorso corrente se è una directory. Se viene specificato il primario -depth, il primario -prune non avrà alcun effetto. -
-oè di circa Alternanza di primari; l'operatore OR. La seconda espressione non deve essere valutata se la prima espressione è vera. Se non lo è, allora questo. -
-typesul tipo, qui il filef -
-namesul nome file, qui*.tex
Output
gfind: paths must precede expression: type
Usage: gfind [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
Risoluzione della proposta
Utilizza -perm 0744 anziché -readable ma non sei sicuro se è equivalente
gfind ~ ! -perm 0744 -prune -o -type f -name "*.tex"
Output: /Users/masi . Uscita prevista: elenco di file .tex.
Come si possono impostare le autorizzazioni di ricerca in modo corretto per essere leggibili?