GNU/Linux >> Znalost Linux >  >> Linux

Jak změnit oprávnění pro určitý vzor souboru/příponu?

použijte najít:

find . -name "*.sh" -exec chmod +x {} \;

Zkuste použít skvělou kombinaci find s xargs.

find . -iname \*.sh -print0 | xargs -r0 chmod +x

. je adresář, ve kterém se má začít, v tomto případě pracovní adresář.


S moderními verzemi find , získáte výhody xargs přístup, který se vyhýbá vícenásobnému volání příkazu (chmod ). Příkaz se jen mírně liší.

find . -name "*.sh" -exec chmod +x {} +

Výstřižek z find docs on Arch 2015.09.01 (důraz přidáno mnou):

-exec command {} +

Tato varianta -exec action spustí zadaný příkaz na vybraných souborech, ale příkazový řádek se vytvoří připojením každého vybraného názvu souboru na konec; celkový počet vyvolání příkazu bude mnohem menší než počet shodných souborů . Příkazový řádek je vytvořen v podstatě stejným způsobem jako xargs vytváří své příkazové řádky. Pouze jedna instance {} je povoleno v rámci příkazu. Příkaz se provede v počátečním adresáři.


Linux
  1. Jak integrovat příkaz MV po příkazu Najít?

  2. Jak změnit oprávnění k souborům na disku Fat32?

  3. Jak použít příkaz find k odstranění souborů odpovídajících vzoru?

  1. Jak změnit oprávnění a vlastníky pomocí příkazového řádku

  2. Jak změnit oprávnění k souboru v cPanel File Manager

  3. Jak používat příkaz chmod (Change Mode) v Linuxu

  1. 5 příkladů dotykových příkazů Linuxu (jak změnit časové razítko souboru)

  2. Jak vyloučit adresář v find . příkaz

  3. Jak zjistit, ke kterému balíčku patří určitý příkaz na CentOS?