GNU/Linux >> Znalost Linux >  >> Linux

Seznam všech složek a podsložek

Stejně jako find uvedené v jiných odpovědích, lepší shelly umožňují jak rekurzivní globusy, tak filtrování shod globů, takže v zsh například...

ls -lad **/*(/)

...vypíše všechny adresáře, přičemž zachová všechny požadované detaily "-l", které byste jinak museli znovu vytvořit pomocí něčeho jako...

find . -type d -exec ls -ld {} \;

(není tak snadné, jak naznačují ostatní odpovědi)

Výhodou find je, že je více nezávislý na shellu – lépe přenosný, dokonce i pro system() volání z programu C/C++ atd..


find . -type d > list.txt

Zobrazí seznam všech adresářů a podadresářů pod aktuální cestou. Pokud chcete vypsat všechny adresáře pod jinou cestou, než je aktuální, změňte . na tu druhou cestu.

Pokud chcete vyloučit určité adresáře, můžete je odfiltrovat se zápornou podmínkou:

find . -type d ! -name "~snapshot" > list.txt

Můžete použít find

find . -type d > output.txt

nebo tree

tree -d > output.txt

tree , Pokud není nainstalována ve vašem systému.

Pokud používáte ubuntu

sudo apt-get install tree

Pokud používáte mac os .

brew install tree

Linux
  1. Najít vše [název souboru].mp4 a přejmenovat [název souboru].audio?

  2. Získat seznam všech souborů podle masky v terminálu?

  3. Linux Najít a odebrat všechny symbolické odkazy týkající se adresáře?

  1. Najděte všechny nulabajtové soubory v adresáři a podadresářích

  2. Vypsat všechny soubory grafických obrázků s find?

  3. Příkaz pro výpis všech souborů kromě . (tečka) a .. (tečka tečka)

  1. Smazat všechny soubory a složky v /tmp starší než jeden den?

  2. Jak přesunout všechny soubory a složky pomocí příkazu mv

  3. Jak vypsat všechny soubory oddílu na linuxu?