que voulez-vous dire en changeant toutes les extensions en *****. jpg? cela signifie-t-il toutes les extensions de fichiers en jpg? si oui, utilisez ren . * .jpg
Imran Rizvi
quel système d'exploitation? Comment voulez-vous les changer?
bryce
@bryce système d'exploitation Windows bien sûr ..
Berker Yüceer
Réponses:
300
Vous pouvez utiliser ren(comme pour renommer ):
ren *.XXX *.YYY
Et bien sûr, changez XXX et YYY pour les extensions appropriées. Il passera de XXX à YYY. Si vous souhaitez modifier toutes les extensions, utilisez simplement à nouveau le caractère générique:
ren *.* *.YYY
Une façon de faire fonctionner ce travail de manière récursive consiste à utiliser la FORcommande. Il peut être utilisé avec l' /Roption d'appliquer récursivement une commande aux fichiers correspondants. Par exemple:
for /R %x in (*.txt) do ren "%x" *.renamed
changera toutes les .txtextensions en .renamedrécursivement, en commençant dans le répertoire courant.
%xest la variable qui contient les noms de fichiers correspondants.
Et, puisque vous avez des milliers de fichiers, assurez-vous d'attendre que le curseur recommence à clignoter pour indiquer que le fonctionnement est terminé.
Remarque: cela ne fonctionne que sur cmd. Ne fonctionnera pas sur Powershell ou Bash
Le modèle de remplacement est un autre nom de fichier avec des index génériques incorporés, dont chacun se compose du caractère # suivi d'un chiffre de 1 à 9. Dans le nouveau nom d'un fichier correspondant, les index génériques sont remplacés par les caractères réels qui correspondent à la référence des caractères génériques dans le nom de fichier d'origine.
et
Notez que le shell développe normalement les caractères génériques * et?, Ce qui dans le cas de ren n'est pas souhaitable. Ainsi, dans la plupart des cas, il est nécessaire de mettre le modèle de recherche entre guillemets.
man ren? La question concernait Windows / cmd. Est-ce que ceux-ci fournissent maintenant des manpages? Qu'est-ce que ren-1.0et comment visualiser sa manpage en contexte?
Voici comment faire cela: Je suis dans le lecteur d sur l'invite de commande (CMD) donc j'utilise:
d:\>ren *.* *.wav
Ceci est juste un exemple d'extensions de fichiers, vous pouvez utiliser n'importe quel type d'extension de fichier comme WAV, MP3, JPG, GIF, bmp, PDF, DOC, DOCX, TXT cela dépend de votre système d'exploitation.
Et, puisque vous avez des milliers de fichiers, assurez-vous d'attendre que le curseur recommence à clignoter pour indiquer que le fonctionnement est terminé.
@echo off
setlocal enabledelayedexpansion
for %%f in (*) do (
set B=%%f
set B=!B:%CD%\=!
ren "!B!" "!B:.StoredProcedure=!"
)
Le script ci-dessus supprime la sous-chaîne .StoredProceduredu nom de fichier. Je suis sûr qu'il peut être adapté pour couvrir plus de cas, demander des commentaires et être globalement plus générique.
remplacer vos deux setcommandes avec un seul: set "B=%%~nxf". ( %%~nxfEst n ame et e x tension %%f). %cd%peut être invalide, lorsque vous le faites récursif.
Stephan
1
Je sais que c'est si ancien, mais j'ai atterri dessus, et les réponses fournies ne fonctionnaient pas pour moi sur PowerShell, donc après la recherche, j'ai trouvé cette solution
Réponses:
Vous pouvez utiliser
ren
(comme pour renommer ):Et bien sûr, changez XXX et YYY pour les extensions appropriées. Il passera de XXX à YYY. Si vous souhaitez modifier toutes les extensions, utilisez simplement à nouveau le caractère générique:
Une façon de faire fonctionner ce travail de manière récursive consiste à utiliser la
FOR
commande. Il peut être utilisé avec l'/R
option d'appliquer récursivement une commande aux fichiers correspondants. Par exemple:for /R %x in (*.txt) do ren "%x" *.renamed
changera toutes les
.txt
extensions en.renamed
récursivement, en commençant dans le répertoire courant.%x
est la variable qui contient les noms de fichiers correspondants.Et, puisque vous avez des milliers de fichiers, assurez-vous d'attendre que le curseur recommence à clignoter pour indiquer que le fonctionnement est terminé.
Remarque: cela ne fonctionne que sur cmd. Ne fonctionnera pas sur Powershell ou Bash
la source
ren *.* *.jpg > E:\Log\Cmd\ExtChange\ext.txt
?FOR
sur CMD
type
. sélectionnera tous les fichiers et les renommera en * (quel que soit leur nom) plus l'extension en jpg
la source
Le comportement de changement de nom est parfois «moins qu'intuitif»; par exemple...
ren * .THM * .jpg renommera vos fichiers THM pour avoir une extension de .jpg. par exemple: GEDC003.THM sera GEDC003.jpg
ren * .THM * b.jpg renommera vos fichiers THM en * .THMb.jpg. par exemple: GEDC004.THM deviendra GEDC004.THMb.jpg
ren * .THM * .b.jpg renommera vos fichiers THM en * .b.jpg par exemple: GEDC005.THM deviendra GEDC005.b.jpg
la source
REMARQUE: pas pour Windows
En utilisant ren-1.0, la forme correcte est:
De
man ren
et
la source
man ren
? La question concernait Windows /cmd
. Est-ce que ceux-ci fournissent maintenant desman
pages? Qu'est-ce queren-1.0
et comment visualiser saman
page en contexte?c'est simple
essayez ceci dans l'invite de commande
la source
Juste pour les personnes qui cherchent à faire cela dans des fichiers batch, ce code fonctionne:
Dans cet exemple, tous les fichiers avec des extensions .jpg dans le répertoire C: \ Users \ jonathan \ Desktop \ test sont remplacés par * .png.
la source
Renommez plusieurs extensions de fichier:
Vous voulez changer
ringtone1.mp3
,ringtone2.mp3
àringtone1.wav
,ringtone2.wav
Voici comment faire cela: Je suis dans le lecteur d sur l'invite de commande (CMD) donc j'utilise:
Ceci est juste un exemple d'extensions de fichiers, vous pouvez utiliser n'importe quel type d'extension de fichier comme WAV, MP3, JPG, GIF, bmp, PDF, DOC, DOCX, TXT cela dépend de votre système d'exploitation.
Et, puisque vous avez des milliers de fichiers, assurez-vous d'attendre que le curseur recommence à clignoter pour indiquer que le fonctionnement est terminé.
la source
Dans mon cas, j'avais un répertoire avec plus de 800 fichiers se terminant par
.StoredProcedure.sql
(ils ont été scriptés avec SSMS ).Les solutions affichées ci-dessus n'ont pas fonctionné. Mais je suis venu avec ceci:
(Basé sur les réponses à la programmation par lots - obtenir le chemin relatif du fichier )
Le script ci-dessus supprime la sous-chaîne
.StoredProcedure
du nom de fichier. Je suis sûr qu'il peut être adapté pour couvrir plus de cas, demander des commentaires et être globalement plus générique.la source
set
commandes avec un seul:set "B=%%~nxf"
. (%%~nxf
Est n ame et e x tension%%f
).%cd%
peut être invalide, lorsque vous le faites récursif.Je sais que c'est si ancien, mais j'ai atterri dessus, et les réponses fournies ne fonctionnaient pas pour moi sur PowerShell, donc après la recherche, j'ai trouvé cette solution
pour le faire dans PowerShell
le crédit va à http://powershell-guru.com/powershell-tip-108-bulk-rename-extensions-of-files/
la source
Une autre façon de renommer des fichiers à l'aide du package renamer npm.
ci-dessous est un exemple de changement de nom des extensions de fichiers
la source
Ce qui a fonctionné pour moi est celui-ci (cd dans le dossier en premier):
la source