2016-08-16 7 views
0

Функция chmod реализована в Cygwin, но не полностью соответствует правам доступа в Windows. Это проявляется в следующем журнале изменений: https://cygwin.com/cygwin-ug-net/ov-new1.7.htmlКак установить файл только для записи или только для чтения в Msys или Cygwin?

С 1.7.34, CHMOD не всегда влияет на маску разрешения POSIX , возвращаемый стата (2) или распечатаны с помощью LS (1), благодаря улучшенному стандарту POSIX ACL обработка. Тем не менее, это все еще далеко от совершенства, так как временный обходной путь, [...]

Реализация chmod в MSys не работает, как указано в следующем сообщении об ошибке: https://sourceforge.net/p/mingw/bugs/1475/

This question спрашивает, как предоставить права доступа к файлу в Msys.

Как изменить права файла на «Только для чтения» и «только на запись» в Msys/Cygwin?

Благодаря

ответ

0

Вы можете использовать команды, предоставляемые Windows: cacls и icacls

Read-Only с cacls

$ cacls "$file_path" //E //P Everyone:N 1>/dev/null 
$ cacls "$file_path" //E //G Everyone:R 1>/dev/null 

Только запись с cacls

$ cacls "$file_path" //E //P Everyone:N 1>/dev/null 
$ cacls "$file_path" //E //G Everyone:W 1>/dev/null 

Первая строка удаляет все права. Вторые линии добавить либо "Read" или "Write"

Если вы не используете Windows XP, вы можете использовать вместо icacls:

  • только для чтения: icacls "$file_path" //grant :r Everyone:R 1>/dev/null
  • отложенной записи только: icacls "$file_path" //grant :r Everyone:W 1>/dev/null

Дополнительная информация об этих командах:

 Смежные вопросы

  • Нет связанных вопросов^_^