Ich weiß, dies ist ein alter Post, aber mit Vim Version8 wurde eine Funktion hinzugefügt, mit der Sie Dateiberechtigungen ändern können.
Nach der version8.txt Datei:
setfperm() legen Sie die Berechtigungen einer Datei
Diese Funktion kann dann über den "Ruf" Befehl in Vim aufgerufen werden.
Dies geschieht wie folgt:
:call setfperm("file name","permissions")
Die Struktur der "Berechtigungen" Zeichenfolge, die die gleiche Form annimmt, wie in der Vim-Dokumentation beschrieben:
getfperm ({fname}) getfperm() Das Ergebnis ist ein String, der die Berechtigungen für die angegebene Datei {fname} liest, schreibt und ausführt. Wenn {fname} nicht existiert oder sein Verzeichnis nicht gelesen werden kann, wird eine leere Zeichenfolge zurückgegeben. Das Ergebnis hat das Format "rwxrwxrwx", wobei jede Gruppe von "rwx" -Flagern wiederum die Berechtigungen des Besitzers der Datei, der Gruppe, zu der die Datei gehört, und anderer Benutzer darstellt. Wenn ein Benutzer keine bestimmte Berechtigung hat, wird das Flag für dieses durch die Zeichenfolge "-" ersetzt. Beispiel: : echo getfperm ("/ etc/passwd") Dies wird hoffentlich (aus Sicherheitsgründen) die Zeichenfolge "rw-r - r--" oder sogar "rw ------ - ".
Ein minimales Beispiel:
:call setfperm("foo.txt","rwxrwxrwx")
Dieser lesen fügt, schreiben und Berechtigungen für die „foo.txt“ Datei im aktuellen Verzeichnis auszuführen.
Danke --- das war nützlich. Ein kleiner Ärger ist, dass vim jetzt warnt, dass die Datei neu geladen werden muss (W16). Gibt es eine Möglichkeit, es zu stoppen, ohne Autoread zu setzen? – Rmano