Vim Peut pas Enregistrer le Fichier (E212)
Parfois, quand je créer un fichier à l'aide de vim some/path/newfile
, vim me permet de le modifier, seulement pour se plaindre lorsque je tente d'enregistrer mes modifications.
E212 Can't open file for writing.
Cela semble se produire uniquement lorsque le fichier est situé dans un répertoire système.
:w!
ne remplace pas cette erreur.
Comment puis-je écrire le tampon courant, sans avoir à l'enregistrer dans un emplacement temporaire, de sortie, puis de le renommer en utilisant sudo?
- Aussi, parfois, si vous mettez un espace entre
w
et!
, il fonctionne. (Au moins, cela fonctionne pour moi sous linux à l'aide de lourds vimvim-gtk
pas seulement légervim
même si je suis sûr que ça marcherait tout de même régulièrement ole' vim.) Je ne connaissais pasPeter
's réponse.w!!
fonctionne pour moi, trop.
Vous devez vous connecter pour publier un commentaire.
Il vous demandera le mot de passe root, puis enregistrez vos modifications comme vous l'avez demandé:
Alors type (L)ado à l'invite de commandes, de re-charger le fichier est enregistré.
Ajoutez cette ligne à votre
.vimrc
:et ensuite vous pouvez faire
lorsque vous arrivez dans cette position, et il va écrire le fichier à l'aide de sudo. Très pratique.
!sudo tee > /dev/null
, mais il dit seulement n "lignes filtrées" et le fichier n'est pas réellement créé. Il semble que le /dev/null est à l'origine de cela?w!!
est beaucoup plus facile à mémoriser que ma solution. Ce qui fonctionne pour moi sur OS X estcmap w!! %!sudo tee %
Vous pouvez mkdir d'abord, puis de l'enregistrer.
Si vous voulez un robuste, facile à retenir solution et ne pas l'esprit de l'installation d'un plugin, essayez SudoEdit.vim - Modifier les Fichiers à l'aide de sudo ou su, ou tout autre outil.
Si c'est le cas dans Windows 7 ou versions ultérieures, exécutez le VI de l'éditeur en tant qu'Administrateur. Cliquez-droit sur l'application et sélectionnez "Exécuter en tant qu'Administrateur". Ce problème sera résolu. En outre, l'erreur est due à des Privilèges d'Administration.
vim/chemin/newfile
vous pouvez essayer de le faire en deux étapes,d'abord créer le dossier "certains" et "chemin" par l'utilisation mkdir ~ ;deuxièmement, vous allez dans le 'chemin' un dossier,utilisez la commande:sudo vim newfile.puis l'enregistrer
Pour ce que ça vaut, vous pouvez également vous assurer d'avoir suffisamment de stockage dans la partition où vous tentez d'enregistrer le fichier. J'ai eu pour libérer de l'espace dans mon /home en voiture et qui a résolu le problème.