web-dev-qa-db-fra.com

Comment renommer plusieurs fichiers dans plusieurs dossiers avec une seule commande

Nous voulons renommer notre *.html Fichiers à *.php Mais (assez malheureusement) n'a pas assez de connaissances pour le faire avec une commande d'invite CMD et/ou un fichier de commandes.

Le problème est que chaque fichier est dans un dossier séparé - et je parle de plus de 750 noms de dossiers différents. Utiliser des caractères génériques pour les fichiers que je connais est le * Mais en utilisant aussi une fauve sauvage pour les dossiers me sont inconnus. Nous devons probablement utiliser la commande FOR (en invite de commande), mais là je suis bloqué.

Structure de dossiers que nous utilisons est:

dossier parent/dossier enfant/dossier de petit-enfant/fichier.html

par exemple:

  • games/A/game_name/file.html
  • games/B/game_name/file.html
  • games/C/game_name/file.html etc.

Le dossier parent est le même pour tous les fichiers; Les dossiers enfants et petits-enfants sont différents pour la plupart des fichiers.

Après avoir renommé ces fichiers à *.php Je suppose ce qui suit dans le .htaccess fera une redirection permanente.

RedirectMatch 301 (.*)\.html$ http://oursite.com$1.php
11
Charles

En utilisant des forfiles, nous pouvons écrire un script pour renommer des fichiers récursives dans tous les sous-dossiers.

forfiles /S /M *.html /C "cmd /c rename @file @fname.php"   

Source: Script de lots pour renommer des fichiers en vrac

1
Srini

Commandant total: Rechercher - Envoyer au panneau - Outil multi-renommé

0
Lazy Badger