Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Batch pour inserer une ligne dans plusieurs fichiers différents

1 réponse
Avatar
toto
Bonjour,

J'ai plusieurs dizaines de fichiers htm dans un répertoire avec sous
répertoires dans lesquels je vais devoir inserer une ligne qui manque.

Peut-on faire un batch qui ira explorer ce repertoire et l'ensemble des sous
repertoires qu'il contient afin que pour chaque fichier *.htm trouvé soit
insérer en 3°ligne la ligne suivante:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

Cela me serait extremement utile....

Merci !

1 réponse

Avatar
mdnews
Fri, 18 Jun 2010 23:19:37 +0200, "toto" >>

Bonjour,

J'ai plusieurs dizaines de fichiers htm dans un répertoire avec sous
répertoires dans lesquels je vais devoir inserer une ligne qui manque.

Peut-on faire un batch qui ira explorer ce repertoire et l'ensemble des sous
repertoires qu'il contient afin que pour chaque fichier *.htm trouvé soit
insérer en 3°ligne la ligne suivante:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">




On ne peut pas réellement insérer une ligne dans un fichier, on doit
en créer un autre temporairement, puis lui remettre le nom de
l'original. (c'est ce que font naturellement la plupart des outils)

Commence par poser le problème en langage naturel.
Cela donne:

- chercher tous les fichiers *.htm
- Pour chaque fichier trouvé
- (facultatif) sauver la date et l'heure du fichier
- créer un fichier temporaire
- copier les deux premières lignes
- créer la troisième ligne <meta...
- copier le reste jusqu'à trouver un caractère de fin de fichier
- copier le temporaire sur le fichier original
- supprimer le temporaire
- (facultatif) remettre la date du fichier original
- boucler.

voila, yapuka (outil au choix: find+awk, vbscript, basic, perl,
powergrep etc)