Добавление восьмеричного разрешения в Linux и объяснение вычитания

Я искал объяснение разрешения Linux с использованием восьмеричных чисел и ничего не нашел.

Я знаю в восьмеричном формате, если у меня есть файл (называемый файлом) с разрешением 555 (5 для пользователя, 5 для группы и 5 для остальных), если я выполню файл chmod +200, я увижу новое разрешение 755. , Если я делаю вычитание, я получаю то же самое; но как я могу изменить разрешение смешивания. Я имею в виду, как я могу изменить права доступа к файлу с 555 до 721 с помощью восьмеричной команды chmod?

Мне нужно сделать это с добавлением и вычитанием в Octal... Я имею в виду, что я должен выполнить команды chmod +200 (имя файла), а затем команды chmod -034 (имя файла)... Есть ли какая-нибудь команда, чтобы сделать это только с помощью одной команды, например chmod +2-34 (имя файла)???

Большое спасибо


person user3663896    schedule 29.12.2017    source источник
comment
просто chmod 721 ‹имя файла›   -  person Fang    schedule 29.12.2017
comment
chmod +2-34 (filename) невозможно. Вам придется написать свой собственный сценарий-оболочку, который выполняет эту математику, а затем вызвать chmod с результатом. Удачи.   -  person shellter    schedule 29.12.2017


Ответы (2)


Вам не нужно добавлять или вычитать, чтобы получить желаемый результат:

chmod 721 (filename)

Надеюсь, это поможет!

person rlillbac    schedule 29.12.2017

Просто сделайте файл chmod 721. Это приведет к (111 010 001), что равно 721.

person Gunnar Sigfusson    schedule 29.12.2017