Astuce Vim : enregistrer un fichier quand on a oublié sudo

Astuce Vim : enregistrer un fichier quand on a oublié sudo

Vous avez déjà édité un fichier système avec Vim, passé du temps à faire vos modifications, et au moment de sauvegarder avec :w, vous obtenez ce message d’erreur frustrant :

E45: 'readonly' option is set (add ! to override)

La solution : :w !sudo tee %

Dans Vim, tapez la commande suivante :

:w !sudo tee %

Explication

  • :w - Commande d’écriture de Vim
  • !sudo tee % - Exécute sudo tee sur le fichier courant (% représente le nom du fichier en cours d’édition)
  • tee lit l’entrée standard et l’écrit à la fois dans le fichier et sur la sortie standard
  • Grâce à sudo, l’opération d’écriture se fait avec les privilèges administrateur

Une fois la commande exécutée, Vim vous demandera probablement si vous voulez recharger le fichier. Tapez L (Load) pour synchroniser le buffer.

En résumé

La prochaine fois que vous oubliez sudo avant d’ouvrir un fichier avec Vim, rappelez-vous de :w !sudo tee %. C’est une astuce simple mais salvatrice qui vous évitera de perdre vos modifications.

Catégories : Linux 
Tags: Vim Astuce 

Suggestions de lecture :