Mam archiwum, które jest archiwizowane przez inną osobę i chcę automatycznie, po pobraniu, zmienić gałąź systemu plików w rozpakowanych plikach, aby uzyskać dostęp do odczytu. (Nie mogę zmienić sposobu tworzenia archiwum).
Przejrzałem ten wątek: chmod: Jak rekurencyjnie dodawać uprawnienia do wykonywania tylko do plików, które już mają uprawnienia do wykonywania, jak do niektórych innych, ale bez radości.
Początkowo katalogi zawierają wiele, ale wszystkie nieprawidłowe flagi, mogą wyglądać następująco:
drwx------
d---r-x---
drwxrwxr-x
dr--r-xr--
To tylko kilka, które do tej pory odkryłem, ale może być ich więcej.
find
błędy, gdy próbuje zajrzeć do katalogu bez x
uprawnień, a więc nie przekazuje go do chmod
. Do tej pory robiłem ręcznie zmienić uprawnienia do katalogu nadrzędnego, a następnie przejść do katalogów podrzędnych i zrobić to samo dla nich i tak dalej. Ale to dużo pracy rąk. Czy nie ma sposobu, aby to zrobić automatycznie?
Tj jak teraz to robię:
robić:
$ chmod -R +x
$ chmod -R +r
dopóki nie dostanę błędów
$ find -type f -exec chmod -x {} +
Ale musi być lepszy sposób.