GNU/Linux >> Znalost Linux >  >> Linux

Proč tento soubor neukáže ‚najít‘?

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.

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í.


Linux
  1. Jak najít soubor v Linuxu

  2. Proč skript Bash nerozpozná aliasy?

  3. Proč potřebujeme soubor .so.1 v Linuxu?

  1. Jak smazat soubor s tímto názvem na linuxu:-]???????q

  2. Proč Vim přidává nový řádek? Je to konvence?

  3. Linux příkaz find - zobrazit průběh

  1. Proč Find -mtime +1 vrací pouze soubory starší než 2 dny?

  2. Najít N nejfrekventovanějších slov v souboru?

  3. Proč Ls -l neukazuje čas a rok pro každý soubor?