Ich möchte die 755-Berechtigung für alle Dateien und Unterverzeichnisse in einem bestimmten Verzeichnis festlegen, aber ich möchte chmod 755 nur für diejenigen Komponenten ausführen, die keine 755-Berechtigung haben.
find /main_directory/ -exec chmod 755 {} \;
Wenn der find
Befehl eine lange Liste zurückgibt, nimmt dies viel Zeit in Anspruch. Ich weiß, dass ich den Befehl stat verwenden kann, um die Octal-Dateiebenenberechtigung jeder Komponente zu überprüfen und dann if-else zu verwenden, um die Dateiberechtigung umzuschalten. Gibt es jedoch einen einzeiligen Ansatz, der verwendet find
und xargs
zuerst überprüft, über welche Berechtigung die Datei / das Verzeichnis verfügt? , und verwenden Sie dann chmod
, um es in 755 zu ändern, wenn es auf etwas anderes eingestellt ist.
u+rw,go+r,go-w,ugo+X
- beachten Sie die Hauptstadt.