Ако сте потребител на Linux, вероятно сте чували за конзолното приложение chmod . Това е полезен инструмент, който позволява промяна на разрешенията на файловата система с помощта на терминална сесия или терминален емулатор. Когато го стартирате, той променя разрешенията, които сте задали за файлове и директории наведнъж. Но може да се наложи да промените разрешенията за файлове отделно от разрешенията за директории и обратно. Ето как може да се направи.
Има няколко начина да го направите, но любимият ми и най-надеждният начин да го направя е да комбинирам chmod с xrags и намирам инструменти. Следващата команда ще модифицира разрешенията само за файлове.
find / path / to / location -type f -print0 | xargs -0 chmod 644
Тук намирам команда изброява всички файлове в посоченото местоположение. Превключвателят -type f му казва да изброява само файлове и да изключва директории. Превключвателят -print0 позволява обработка на имена на файлове по такъв начин, че имената на файлове или директории, съдържащи интервали или нови редове, да бъдат обработвани правилно.
Подобна подходяща команда може да се използва и за директории. Единствената част, която трябва да промените, е -type f на -type d:
find / path / to / location -type d -print0 | xargs -0 chmod 755
Съвет: Можете да спестите време и да пишете по-малко, като използвате този трик.
- Първо, приложете разрешенията на файловата система към файлове и папки, като стартирате chmod в рекурсивен режим:
chmod -R 644 / път / до / местоположение
Той ще приложи разрешения rw-r-r към всички файлове и папки в посоченото местоположение.
- След това изпълнете командата само за директории:
find / path / to / location -type d -print0 | xargs -0 chmod 755
Това е.