Page 1 sur 1
[R] Renommer dossier sous la commande dos : "Ren"
Posté : sam. 09 sept. 2017 03:49
par Boulanza
Je cherche à coder sous AutoIt (RunWait) la commande dos "Ren" qui permet de renommer un dossier.
Sous dos :
C:\Program Files>Ren MonDossie NewDossier ==> ça marche.
J’ai trouvé un exemple de code sous AutoIt mais ça ne marche pas. Pouvez-vous m’aider. Merci d’avance.
Code : Tout sélectionner
$avant = "MonDossie"
$apres = "NewDossier"
$dossier = @ProgramFilesDir ; dossier contenant "aaa.txt" (chemin complet)
_Rename($avant, $apres, $dossier)
Func _Rename($oldname, $newname, $folder)
RunWait(@ComSpec & ' /C Ren "' & $avant & '" "' & $apres & '"', "", @SW_HIDE)
EndFunc
Re: [..] Renommer dossier sous la commande dos : "Ren"
Posté : sam. 09 sept. 2017 08:56
par mimione
Bonjour
Pourquoi ne pas utiliser la fonction AutoIt "DirMove()" ??
(Because AutoIt lacks a "DirRename" function, use DirMove() to rename a folder!)
ça ne répond pas strictement à la question, mais ça fait le job!
Re: [..] Renommer dossier sous la commande dos : "Ren"
Posté : sam. 09 sept. 2017 10:32
par walkson
Bonjour
mimione a tout à fait raison mais pour le "fun"
$avant = "MonDossier"$apres = "NewDossier" $dossier = @DesktopDir & "\"_Rename
($avant, $apres, $dossier)Func _Rename
($oldname, $newname, $folder) RunWait(@ComSpec & ' /C Ren "' & $folder & $oldname & '" "' & $newname & '"', "", @SW_HIDE)EndFunc
Re: [..] Renommer dossier sous la commande dos : "Ren"
Posté : sam. 09 sept. 2017 10:34
par Boulanza
Bonjour mimione,
Je dois renommer les titres des dossiers de documentaires en avi de tailles plus de 40 Go. Avec DirMove ( "source dir", "dest dir" [, flag = 0] ) : dest dir = saturation disque ...
La commande Ren dos n'a pas besoin de copier le contenu du dossier pour le renommer.
Re: [..] Renommer dossier sous la commande dos : "Ren"
Posté : sam. 09 sept. 2017 12:03
par walkson
Je me suis amusé à tester les 2 méthodes sur un dossier de 121 go
_Rename()>> 45.1907515378014
DirMove()>> 149.143081697957
Votre fonction est plus rapide mais en 149 milliseconds, visiblement Dirmove() ne recopie pas les données mais change simplement le nom
Re: [..] Renommer dossier sous la commande dos : "Ren"
Posté : sam. 09 sept. 2017 12:25
par mikell
Marche aussi
RunWait(@ComSpec & ' /C Ren "' & $oldname & '" "' & $newname & '"', $folder, @SW_HIDE)
Pour l'anecdote, REN est case sensitive (essaie de renommer "dossier" en "Dossier")
Re: [..] Renommer dossier sous la commande dos : "Ren"
Posté : dim. 10 sept. 2017 00:51
par Boulanza
Bonsoir,
Merci à vous tous pour votre collaboration.
Cordialement.