Sé que esta es una publicación anterior, pero con Vim Version8 se ha incluido una función con la que puede cambiar los permisos de los archivos.
De acuerdo con el archivo version8.txt:
setfperm() define los permisos de un archivo
Esta función puede ser llamada a través del comando "llamada" en Vim.
Esto se hace como sigue:
:call setfperm("file name","permissions")
La estructura de los "permisos" string toma la misma forma como se describe en la documentación de Vim:
getfperm ({fname}) getfperm() El resultado es una Cadena, que es la lectura, escritura y ejecución de los permisos del archivo dado {fname}. Si {fname} no existe o su directorio no se puede leer, se devuelve una cadena vacía . El resultado es de la forma "rwxrwxrwx", donde cada grupo de indicadores "rwx" representa, a su vez, los permisos del propietario del archivo, el grupo al que pertenece el archivo y otros usuarios. Si un usuario no tiene un permiso dado, la bandera para este se reemplaza por la cadena "-". Ejemplo: : echo getfperm ("/ etc/passwd") Se espera que (desde el punto de vista de seguridad) muestre la cadena "rw-r - r--" o incluso "rw ------ - ".
Un ejemplo mínimo:
:call setfperm("foo.txt","rwxrwxrwx")
Esto añade leer, escribir y ejecutar permisos para el archivo "foo.txt" en el directorio actual.
Gracias --- esto fue útil. Una pequeña molestia es que vim ahora advierte sobre la necesidad de volver a cargar el archivo (W16). ¿Hay alguna manera de detenerlo sin configurar autoread? – Rmano