Comando per eseguire un chmod ricorsivo per rendere eseguibili tutti i file .sh all'interno di una directory?


Risposte:


25

Per rendere ciò possibile, è possibile utilizzare il findcomando e cercare tutti i file con .shun'estensione, quindi eseguire il chmodcomando su ognuno trovato:

find /directory/of/interest/ -type f -iname "*.sh" -exec chmod +x {} \;

Informazione:

  1. -type f: Solo file normali (salta directory, collegamenti simbolici, pipe e socket denominati e file speciali presenti in / dev)
  2. -iname: Ignora il caso nel nome
  3. "*.sh": Globbing, che dice al findcomando di cercare file con estensione ".sh"
  4. -exec chmod +x {}: Indica al findcomando di eseguire un chmodcomando su ciascun file trovato. Rendere ogni eseguibile
  5. \;: Indica la fine del comando
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.