Das Unix Rechtesystem ist im Prinzip recht einfach gestrickt; so einfach, dass man auch recht schnell an seine Grenzen stösst. Dazu gehört zB das Ändern von den Rechten rekursiv über einen ganzen Verzeichnisbaum. Das Problem hierbei ist, dass Verzeichnisse das execute-Bit benötigen und Dateien idR dieses nicht. Aber man kann sich einen Parameter des find-Befehls zu Nutze machen → -type. Durch diesen Parameter kann find zwischen einem Verzeichnis und einer Datei unterscheiden und zB via xargs die Ausgabe direkt an chmod weiterreichen.
Um zuerst die Verzeichnisse (type -d → Directory) rekursiv zu ändern verwenden Sie folgenden Befehl:
$ find . -type d -print0 | xargs -0 chmod 755
Um die Dateien (type -f → File) im Anschluss daran rekursiv zu ändern, gehen Sie wie folgt vor:
$ find . -type f -print0 | xargs -0 chmod 644
Verwandte Artkel:
-> find: Syntax und Beispiele
-> xargs: Syntax und Beispiele
— pronto 2010/05/09 18:44