GNU/Linux >> Znalost Linux >  >> Linux

Proveďte příkaz pro každý soubor v aktuálním adresáři

Možná xargs, který znovu vyvolá příkaz zadaný za ním pro každý další řádek parametrů přijatých na stdin...

ls -1 $FOLDER | xargs du

Ale v tomto případě proč ne...

du *

...? Nebo...

for X in *; do
    du $X
done

(Osobně používám zsh, kde můžete upravit vzor glob tak, abyste našli pouze běžné soubory, nebo pouze adresáře, pouze symbolické odkazy atd. - jsem si docela jistý, že v bash je něco podobného - můžete vyhledat podrobnosti, pokud to potřebujete).

Chybí mi část vašeho požadavku?


find příkaz vám také umožní provést příkaz pro každou položku, kterou najde. Bez dalších argumentů najde všechny soubory a složky v aktuálním adresáři, takto:

$ find -exec du -h {} \;

{} část je "proměnná", kde je umístěna shoda, zde jako argument pro du . \; ukončí příkaz.


Linux
  1. 20 základních příkazů Linuxu pro každého uživatele

  2. 8 tipů pro příkazový řádek Linuxu

  3. Bz2 každý soubor v adresáři

  1. Průvodce linuxovým terminálem pro začátečníky

  2. Proveďte příkaz, kde je nalezen soubor?

  3. Základní příklady příkazu File v Linuxu

  1. Jak připojit výstup do souboru?

  2. Žádná manuálová stránka pro příkaz cd

  3. Co je ekvivalentní příkazu Linux File pro Windows?