Bloquear / Impedir la edición de archivos de origen en Linux usando C ++
-
05-07-2019 - |
Pregunta
¿Cómo puedo bloquear / desbloquear mediante programación o, de otro modo, evitar / habilitar la edición de un archivo fuente en Linux usando C ++.
Quiero poder bloquear el archivo de origen para que si lo abro en un editor no me permita volver a guardar en el mismo archivo de origen.
Estoy pensando en tal vez cambiar los permisos a solo lectura (y cambiarlos de nuevo a lectura-escritura más adelante): ¿cómo hago eso desde C ++?
Solución
Prueba 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);
Otros consejos
¿Por qué no estás usando una herramienta de administración de código fuente como CVS o Subversion? CVS hace un buen bloqueo (también lo hace Subversion). Más importante aún, usted tiene la historia de los cambios. Mejor aún (con CVS de todos modos) tienes que hacer el paso de hacer un " checkout " para hacer el archivo grabable.
Sí, es un poco difícil decir lo que está buscando
-
Seguridad contra otros usuarios que editan tus archivos - > utilice " chmod, fchmod "
-
La seguridad contra usted mismo se mete accidentalmente con sus archivos de origen - > realmente deberías cambiar tu forma de pensar y usar una herramienta de control de fuente. Me gusta Subversion (SVN) o incluso mejor Mercurial .