L'autre jour, j'ai essayé de créer un fichier de commandes qui indiquera à l'utilisateur le concours d'un fichier lorsqu'un fichier texte spécifique est mis à jour / modifié, voici mon code. Il ne fonctionne pas pour une raison quelconque: S
@echo off
SetLocal EnableDelayedExpansion
:Try
ping 127.0.0.1 -n 2 -w 1000 > NUL
ping 127.0.0.1 -n %1 -w 1000 > NUL
cls
set test=
for /F "delims=" %%a in (test.txt) do set test=!test! %%a
if !test!==%VAR% (
goto Try
) else (
echo !test!
set VAR1=!test!
goto Try
)
C'est ce que j'essaie de faire ..
Attendez 2 secondes. effacer l'écran. transformer le contenu de test.txt en une variable. comparez la variable avec l'autre variable appelée% VAR%. puisqu'il n'y a pas de variable à comparer au début, il passe à une autre instruction et affichera le contenu une fois. Ensuite, le contenu actuel sera converti en une variable. Il reviendra au début et réessayera .. Si le fichier test.txt a changé, il retournera à autre chose. Si ce n'est pas le cas, il faudra essayer d'attendre que le fichier change.
S'il vous plaît aidez-moi c'est très ennuyeux.
MISE À JOUR!!!
Donc, aujourd’hui, j’étais en train de jouer avec le code et j’ai commencé à essayer d’autres méthodes parce que je doute que cette méthode fonctionne. C’est pourquoi j’ai pensé «Out Side Of The Box». Dans mon cas, j'ai un fichier batch qui modifie ce document texte appelé test.txt de temps en temps. J'ai donc changé celui-ci. C'est l'étiquette
:Start
cls
set /p inp=
echo %date% %inp% > test.txt
echo 0 >> tmp.yml"
goto Start
Et j'ai réécrit l'autre lot aussi ..
@echo off
color 04
:Try
set /p texte=< test.txt
if exist "tmp.yml" goto Changed
goto Try
:Changed
del "tmp.yml"
echo %texte%
goto Try
J'espère que quelqu'un a trouvé cela utile: D