Je veux copie un fichier texte fictif dans chaque sous-répertoire d'un répertoire donné sur un lecteur réseau (Windows). Comme il s'agit de centaines ou de milliers de sous-répertoires, je ne peux pas le faire manuellement, mais je peux créer une liste des répertoires concernés. Cette liste pourrait être transmise à un fichier batch ou similaire.
Je suppose que le fichier batch doit avoir une sorte de boucle for qui prend une ligne de la liste du répertoire comme compteur. A chaque itération, la boucle créerait un fichier vide dans le répertoire indiqué par le compteur, mais je n'ai pas les compétences nécessaires pour créer le fichier batch approprié.
Quelle est la meilleure façon d'aborder ce problème ?
Mise à jour :
c:\help for
comprend un /R
commutateur qui semble utile :
FOR /R [[drive :]path] %variable IN (set) DO command [command-parameters]
Parcourt l'arborescence des répertoires ayant pour racine [drive :]path, en exécutant l'instruction FOR dans chaque répertoire de l'arborescence. Si aucune spécification de répertoire répertoire n'est spécifié après /R, le répertoire courant est alors en cours. Si set n'est qu'un simple point (.), il énumérera simplement l'arborescence des répertoires. énumérera simplement l'arborescence des répertoires.
Cela semble simple, mais j'ai besoin de lire une ligne de la liste des répertoires :
for % ? in (.) do echo % ? > dumy_file.txt
Detalles: Mon équipe dispose d'un disque réseau partagé avec des milliers de sous-dossiers remplis de documentation périmée et d'anciens documents de travail ; c'est un véritable gâchis. Le plan consiste à créer ailleurs une nouvelle arborescence (c'est fait) qui reflète notre futur concept de fichiers, puis à déplacer ou à supprimer les fichiers de l'ancienne arborescence. Pour savoir quels sous-répertoires ont déjà été "migrés", nous avons pensé qu'il serait pratique d'avoir un marqueur "à faire" sous la forme d'un fichier fictif qui peut être recherché.