Enregistrer un fichier modifié dans nano, mais sans autorisations

18

J'ai édité un fichier dans / etc / que je veux enregistrer, mais j'ai oublié de l'ouvrir avec sudo. Je me souviens qu'il y avait une commande pour enregistrer un tel fichier dans vi, et je veux savoir s'il existe une telle façon de le faire dans nano?

Merci.

theTuxRacer
la source
Les changements sont considérables. Je suppose que je peux ouvrir un nouveau terminal, sélectionner les modifications et les coller. Ou copiez-collez le tout. Mais je me demandais s'il y avait une façon "geek" de le faire.
theTuxRacer

Réponses:

20

Oui, vous pouvez l'enregistrer temporairement dans votre répertoire personnel. Appuyez sur Ctrl+ Opour modifier le chemin d'accès à votre répertoire personnel ou dans / tmp, puis appuyez sur Enterpour l'enregistrer. Ensuite, vous pouvez sudo mv.

texte alternatif

Appuyez sur CTRL+ Ovous montrera le chemin. Modifiez cela dans votre répertoire personnel ou / tmp. Par exemple, Nom de fichier à écrire: / tmp / filename et appuyez sur Entrée.

karthick87
la source
4
Vous devez sudo cp </full/temp/name> </full/original/name>et rm </full/temp/name>conserver les autorisations sur le fichier d'origine. sudo mvva les détruire, ce qui n'est pas ce que vous voulez, surtout s'il avait des autorisations exécutables.
Martin Thornton
4

Ouvrez simplement un nouvel onglet dans le terminal, utilisez chmod pour modifier les autorisations du fichier en 777, enregistrez le fichier dans nano, puis redéfinissez les autorisations sur ce qu'elles étaient, probablement 644. Une alternative consiste à changer de propriétaire en utilisant chown pour vous-même, enregistrez le fichier et redéfinissez la propriété sur root.

charlie-tca
la source
1
Couplé avec Ctrl + z et fgc'est de loin le moyen le plus rapide de le faire.
Jervelund
Je trouve cela plus facile et plus rapide que la réponse acceptée (Y)
Sudip Bhandari
sudo chmod 777 yourfile
Josh
2

Essayez ctrl+ oet choisissez d'enregistrer le fichier dans votre dossier de départ.

Alors fais sudo mv /home/username/file /etc/

RolandiXor
la source
ouais, je suppose que je pourrais faire ça. Merci. mais je continue à l'accepter pour voir s'il y a vraiment un moyen.
theTuxRacer