(3 risposte)
Chiuso 10 mesi fa.
Usando find
con grep
, è possibile individuare i file che corrispondono a un modello:
# find | grep error
./solr-modifiedSolr4/SolrPhpClient/phpdocs/errors.html
./error_log
./includes/classes/error_log
Tuttavia, utilizzando find
da solo il primo file non viene trovato:
# find . -name error*
./error_log
./includes/classes/error_log
Perché non find
individua errors.html
file quando non viene utilizzato con grep
? Come è find
utilizzato per mostrare anche questo file?
Risposta accettata:
Devi citare il tuo argomento error*
perché il guscio lo espande. Quindi quello che stai effettivamente eseguendo ora è find -name error_log
, perché è ciò a cui la shell può espanderlo (c'è un file chiamato error_log
nella directory corrente).
find . -name 'error*'
È la chiamata corretta per il tuo caso d'uso.