Как проверить, записать ли текст файла, завершенного для выполнения другой задачи, используя пакетный скрипт - PullRequest
0 голосов
/ 18 ноября 2018

У меня есть два файла: env.txt и variable.txt . Я использую пакетный скрипт, чтобы прочитать все значения в файле env.txt и заменить их в файле variable.txt , после замены всех значений я хочу выполнить задачу расписания.

Моя проблема: Чтение - запись файла работает нормально, но я не знаю, как проверить variable.txt Запись файла завершена для выполнения другой задачи, и я хочу обработать эту синхронизацию .

Detail:

Файл env.txt содержит некоторое значение

Ex:

value1

значение2


Когда я читаю файл env.txt построчно, я хочу заменить каждое это значение, присвоенное файлу variable.txt и выполнить задачу.

Вот мой код:

@echo off
setlocal enableextensions enabledelayedexpansion
rem Defined some variables...
for /F "delims=" %%a in (%ENV_FILE_PATH%) do (
    set /A count+=1
    set "array[!count!]=%%a"
)
set newline=^& echo.
set new_file=
for /L %%i in (1,1,%count%) do (
    set replace_host=TESTED_HOST="!array[%%i]!"
    FOR /F "usebackq delims=" %%a in (%VARIABLE_FILE_PATH%) do (
        set "var=%%a"
        echo(!var!|findstr /r /c:"!search!" >nul && (
            set "var=!replace_host!"
        )
        echo(!var!|findstr /r /c:"!search_user_name!" >nul && (
            set "var=!default_user_admin!"
        )
        echo(!var!|findstr /r /c:"!search_pwd!" >nul && (
            set "var=!default_pwd_admin!"
        )
        set new_file=!new_file!%newline%!var!
    )
    echo(!new_file!) > !FILE_VARIABLE_OUT!
    rem ( (call ) >>!FILE_VARIABLE_OUT! ) 2>nul && (
    rem     Execute task when check file write completed
    rem     echo The file write completed
    rem ) || (
    rem     echo The file is still being created
    rem )
)
endlocal
pause

IFY, я только начал изучать пакетный скрипт.

Спасибо всем!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...