У меня есть каталог python-work для моей работы python(3). Я создаю новый файл test.py Этот файл будет просто print('hello world') .

Попытка запустить новый файл:

{mac name}:python-work user$ ./test.py 
-bash: ./test.py: Permission denied

Исправление заключается в индивидуальной настройке разрешений с помощью chmod +x ./test.py .

{mac name}:python-work user$ ./test.py 
hello world

Как я могу гарантировать, что любые новые файлы, созданные в этой папке, наследуют разрешение исполняемого файла из его родительского каталога, а не требуют индивидуальной настройки разрешений для каждого нового файла?

Я хотел бы подтвердить этот похожий вопрос, который не решил мою проблему.

1 ответ1

0

Простой ответ: вы не можете.

Новые файлы создаются с помощью вашего umask, а не путем наследования разрешений верхнего уровня.

Существует также концептуальная проблема с наследованием разрешений из каталога. Быть исполняемым для каталога означает нечто иное, чем быть исполняемым для файла. Если вы хотите , чтобы cd - диск в каталог, то этот каталог должен быть исполняемым для вас. В вашем наследственном положении, то оно автоматически будет означать, что все файлы , которые вы создаете , будут исполняемым файлом , если вы в состоянии cd в этот каталог.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .