Tato otázka zde již obsahuje odpovědi :Proč můj nález není rekurzivní?
(3 odpovědi)
Uzavřeno před 10 měsíci.
Linux
(3 odpovědi)
Uzavřeno před 10 měsíci.
Pomocí find pomocí grep , lze najít soubory, které odpovídají vzoru:
# find | grep error
./solr-modifiedSolr4/SolrPhpClient/phpdocs/errors.html
./error_log
./includes/classes/error_log
Nicméně pomocí find samotný první soubor nebyl nalezen:
# find . -name error*
./error_log
./includes/classes/error_log
Proč find vyhledejte soubor errors.html pokud se nepoužívá s grep ? Jak je find používá k zobrazení tohoto souboru také?
Přijatá odpověď:
Musíte uvést svůj argument error* protože skořápka ji rozšiřuje. Takže to, co teď ve skutečnosti spouštíte, je find -name error_log , protože to je to, na co jej může shell rozšířit (existuje soubor s názvem error_log ve vašem aktuálním adresáři).
find . -name 'error*'
Je správné vyvolání pro váš případ použití.