J'ai le répertoire /home/user/oldname
et je veux le renommer /home/user/newname
. Comment puis-je faire cela dans un terminal?
564
J'ai le répertoire /home/user/oldname
et je veux le renommer /home/user/newname
. Comment puis-je faire cela dans un terminal?
mv
ourename
.Réponses:
la source
No such file or directory
. Pour éviter cela, faites quelque chose commemv /home/user/Folder /home/user/temp; mv /home/user/temp/ /home/user/folder
.--no-target-directory
(-T
) , pour éviter de traiternewname
comme un répertoire cible.mv
peut faire deux emplois.Pour renommer un fichier ou un répertoire, tapez ceci dans Terminal:
avec un espace entre les anciens et les nouveaux noms.
Pour déplacer un fichier ou un répertoire, tapez ceci dans Terminal.
il déplacera le fichier sur le bureau.
Si est un répertoire, vous devez ajouter
-R
avant le nom du répertoire:la source
mv
sur Ubuntu provient de GNU coreutils. AFAICT n’a pas d’-R
option, il n’est pas nécessaire lors du déplacement d’un répertoire.-T
. Voir la réponse de @ bmaupin pour son comportement.Cela renommera le répertoire si la destination n'existe pas ou s'il existe mais qu'il est vide. Sinon, cela vous donnera une erreur.
Si vous faites cela à la place:
Une des deux choses va se passer:
/home/user/newname
n'existe pas, il sera renommé/home/user/oldname
en/home/user/newname
/home/user/newname
existe, il entrera/home/user/oldname
dans/home/user/newname
, c'est à dire/home/user/newname/oldname
Source: Comment décider que mv se déplace dans un répertoire plutôt que de le remplacer?
la source
mv -T $PWD/analisys $PWD/Analisys
retournemv: '/Users/sixtykeys/Projects/murphy/tmp/analisys' and '/Users/sixtykeys/Projects/murphy/tmp/Analisys' are the same file
. J'ai travaillé autour de cela en utilisant un nom intermédiaire (c'est-à-direanalisys_
).Si vous souhaitez renommer un répertoire de votre niveau dans le système de fichiers (par exemple, vous vous trouvez dans votre répertoire de base et souhaitez renommer un répertoire qui se trouve également dans votre répertoire de base):
la source
Cette
gvfs-move
commande renommera également les fichiers et les répertoires.la source
gvfs-rename renommera également les répertoires. Il y aura une erreur si un répertoire avec le nouveau nom existe déjà. La seule limitation est que vous ne pouvez pas utiliser un chemin d'accès avec le nom du dossier. Alors
ne fonctionnera pas, mais
marchera. Pas aussi utile que mv -T mais j'ai lu dans l'homme qu'il était destiné aux opérations du réseau.
la source