je dois utiliser Batch pour vérifier le fichier Directory.twml pour voir si elle contient des mots de fichier blocked.twml et si elle ne remplace avec [bloqué]Lot trouver du texte dans le fichier et le remplacer par un autre texte
ici est un exemple des deux fichiers:
Directory.twml
11:38:38.90 [System] Twml Has joined the chat.
11:38:41.17 [User] Twml says: line one
11:38:42.96 [User] Twml says: line bad two
11:38:46.27 [User] Twml says: line three
11:38:50.16 [User] Twml says: you get the idea here
11:38:52.35 [System] Twml Has logged off.
Blocked.twml
word1
word2
word3
bad
word5
word6
Ce que je veux dire Directory.twml ressembler est
11:38:38.90 [System] Twml Has joined the chat.
11:38:41.17 [User] Twml says: line one
11:38:42.96 [User] Twml says: line [Blocked] two
11:38:46.27 [User] Twml says: line three
11:38:50.16 [User] Twml says: you get the idea here
11:38:52.35 [System] Twml Has logged off.
Je peux déjà utiliser Findstr pour regarder dans le fichier et voir si le texte existe mais c'est aussi loin que je peux obtenir, je dois pas vérifier un mot set mais il faut vérifier la liste des mots dans le fichier Blocked.twml
findstr /i "bad" <"Directory.twml" 1>nul
aussi je peux supprimer le mot du fichier, mais je veux le remplacer pas simplement supprimer
findstr /i /v /c:"%text%" Directory.twml > "Directory.twmll" 2>nul
del Directory.twml /s /a >nul
copy Directory.twmll Directory.twml >nul
attrib +h Directory.twml
del Directory.twmll /s /a >nul
mais encore une fois cette est un texte fixe de chercher non de ce qui est dans un fichier comme une liste
Si Directory.twml contient quoi que ce soit dans Blocked.twml remplacer par [bloqué] mais je ne peux pas comprendre comment le faire
===== ==== Modifier ===========
Ceci est la solution:
(
for /f "delims=" %%A in (Directory.twml) do (
set "line=%%A"
for /f "delims=" %%B in (blocked.twml) do set "line=!line: %%B = [Blocked] !"
echo !line!
)
)>Directory.new
Sa sortie ressemblait pour moi
13:22:14.16 [User] twml says: this is a test
13:22:20.37 [User] twml says: this is a [Blocked] word test
s'il vous plaît ne pas mettre une réponse à la question (alors techniquement sans aucun doute plus). [Lire ceci] (https://stackoverflow.com/help/someone-answers) – Stephan
Ceci n'est pas un commentaire d'enseignement c'est une demande; Veuillez accepter la réponse de @ Stephan car votre message indique clairement que vous l'avez fait! – Compo