Rekursywna zmiana uprawnień dla plików i katalogów

Czasami zachodzi potrzeba zmienić uprawnienia np. całemu projektowi. Dla plików wystarczą uprawnienia odczytu, dla katalogów potrzeba uprawnień odczytu i wykonania.
Niestety polecenie chmod -R 755 ./ zmieni prawa od miejsca w którym jesteśmy rekursywnie, ale zarówno plikom jak i katalogom.

Zamieszczam poradę, żeby nie głowić się jak to było, programem find znajdujemy odpowiednio najpierw katalogi i dla nich wykonujemy polecenie chmod 755. Analogicznie dla napotkanych rekursywnie plików.

  1. find . -type d -exec chmod 755 {} \;
  2. find . -type f -exec chmod 644 {} \;