Jak najít soubor v podadresářích Linux – najít soubor rekurzivně v Linuxu. Zde je unixový příkaz k nalezení souboru v adresáři a podadresáři.
Co je rekurzivní výpis adresáře
Rekurzivní znamená, že pokud má adresář podadresáře a soubory, bude příkaz spuštěn a aplikován také na tyto soubory (rekurzivně).
Nejjednodušší způsob, jak zobrazit seznam souborů a podadresářů v libovolném konkrétním adresáři, je pomocí příkazu tree.
Strom je rekurzivní program pro výpis adresářů, který vytváří hloubkově odsazený výpis souborů. Bez argumentů strom uvádí soubory v aktuálním adresáři. Když jsou uvedeny argumenty adresáře, strom postupně uvádí všechny soubory a/nebo adresáře nalezené v daných adresářích. Po dokončení výpisu všech nalezených souborů/adresářů strom vrátí celkový počet uvedených souborů a/nebo adresářů.
příkaz stromu
Zde je jednodušší způsob, jak provést rekurzivní vyhledávání pomocí příkazu tree:
tree -a
Při použití -a s příkazem tree se vytisknou všechny soubory. Ve výchozím nastavení strom netiskne skryté soubory (ty začínající tečkou .’). Strom také v žádném případě nevypisuje konstrukce systému souborů.‘ (aktuální adresář) a ,..‘ (předchozí adresář).
Zkombinujte „najít“ a „grep“
V Linuxu můžete také použít kombinaci dvou příkazů – find
a grep
příkazy k rekurzivnímu hledání souborů, které odpovídají grep
v podadresářích vzor (poskytnutý s argumentem):
find . -type f -exec grep -l 'directory_name' {} ;
Tento příkaz velmi zjednodušuje úkol. Prohledá všechny soubory ve všech podadresářích aktuálního adresáře a vytiskne názvy souborů. Je to skvělá sada příkazů pro rekurzivní vyhledávání souborů ve všech podadresářích.
Další příkazy pro rekurzivní vyhledávání souborů
Existuje mnoho dalších příkazů pro rekurzivní vyhledávání souborů. Uživatelé Linuxu Ubuntu mohou použít kterýkoli z následujících příkazů:
- ls -R :Pomocí příkazu ls získáte rekurzivní výpis adresářů v systémech Linux
- najít /dir/ -print :Pomocí příkazu find zobrazíte rekurzivní výpis adresářů v systémech Unix
- du -a . :Použijte příkaz du k zobrazení rekurzivního seznamu adresářů na unixových systémech
Původní článek