Блокировать / Запрещать редактирование исходных файлов в Linux с использованием C ++
-
05-07-2019 - |
Вопрос
Как я могу программно заблокировать / разблокировать или иным образом запретить / включить редактирование исходного файла в Linux с использованием C ++.
Я хочу иметь возможность заблокировать исходный файл, чтобы, если я открою его в редакторе, это не позволило мне сохранить его обратно в тот же исходный файл.
Я подумываю о том, чтобы, возможно, изменить разрешения на только для чтения (и позже изменить их обратно на чтение-запись):как мне сделать это с C ++?
Решение
Попробуйте man fchmod:
NAME chmod, fchmod - change permissions of a file SYNOPSIS #include <sys/types.h> #include <sys/stat.h> int chmod(const char *path, mode_t mode); int fchmod(int fildes, mode_t mode);
Другие советы
Почему вы не используете инструмент управления исходным кодом, такой как CVS или Subversion? CVS делает хорошую блокировку (как и Subversion). Что еще более важно, у вас есть история изменений. Еще лучше (в любом случае с CVS) вы должны сделать шаг "оформить заказ". сделать файл доступным для записи. Р>
Да, немного сложно сказать, что вы ищете
Защита от редактирования ваших файлов другими пользователями -> используйте "chmod, fchmod"
Защита от того, что вы сами случайно вмешаетесь в свои исходные файлы -> вам действительно следует изменить свое мышление и использовать инструмент управления версиями.Нравится Subversion (SVN) или даже лучше Переменчивый.