Je nach Umfang Ihrer Änderungen kann das Speichern schneller sein (:w
) Ihre Datei mit einem anderen Namen und verwenden Sie dann sudo
und cat
um den Inhalt zu überschreiben der Originaldatei:
sudo sh -c 'cat changed > file'
Beachten Sie, dass beide cp
und mv
ersetzt die Originaldatei und ihre Attribute (Eigentum, Berechtigungen, ACLs) gehen verloren. Verwenden Sie sie nicht es sei denn, Sie wissen, wie Sie die Berechtigungen nachträglich reparieren können.
Versuchen Sie es
:w !sudo tee "%"
Die w !
nimmt die gesamte Datei und leitet sie in einen Shell-Befehl. Der Shell-Befehl ist sudo tee
welches tee
ausführt als Superuser. %
wird durch den aktuellen Dateinamen ersetzt. Anführungszeichen, die für Dateien benötigt werden, deren Namen entweder Leerzeichen oder andere Sonderzeichen enthalten.
Speichern Sie die Datei woanders (z. B. in Ihrem Home-Ordner) und dann sudo mv
das Original überschreiben?