Запись / чтение счетчика в текстовый файл - PullRequest
0 голосов
/ 07 июня 2010

Мне нужен командный файл, который записывает число в текстовый файл.

В следующий раз, когда запускается пакетный файл, он должен прочитать текущий номер счетчика из текстового файла и добавить 1, чтобы подсчитать и сохранить это новое значение в текстовом файле. (больше ничего нет в текстовом файле) Когда счет> 5, он должен начинаться с 1 снова

Пример: Count.bat запускается 1 раз:

count.txt не имеет счетчика, поэтому Count.bat сохраняет значение 1 в count.txt

Count.bat запускается 2 раза:

Count.bat читает 1 из count.txt и сохраняет новое значение 2 в count.txt

Когда count.bat запускается 6 раз, он должен начинаться заново, сохраняя значение 1 в count.txt

Я думаю, это просто сделать, но я не буду использовать для пакетных команд

Так что, надеюсь, кто-то здесь сможет мне помочь.

Ответы [ 4 ]

0 голосов
/ 19 августа 2016

проще с модулем:

@echo off & setlocal
(<count.txt set /p count=) 2>nul
set /a count=count %% 5 + 1
>count.txt echo %count%
type count.txt
0 голосов
/ 22 июня 2010

Начните с файла temp.txt с одной строки, содержащей только одну (1) без скобок.

   for /f "eol=# tokens=* delims=," %%i in (temp.txt) do (
     set /A Count = %%i + 1
     If '%Count%' == '6' (set /A Count = 1)
   )
   echo %Count% > temp.txt
0 голосов
/ 19 августа 2016
if not exist count.txt (
    echo 1 > count.txt
    exit
)
< count.txt set /p count=
if %count% equ 6 (
    echo 1 > count.txt
    exit
)
set /a count=count+1
echo %count% > count.txt

Если честно; Я написал этот ответ только потому, что этому вопросу 6 лет.

0 голосов
/ 07 июня 2010

Я знаю, что это не совсем то, что вы просили, но вы можете создать отдельные файлы:

@echo off

if not exists count.1 goto l1
if not exists count.2 goto l2
if not exists count.3 goto l3
if not exists count.4 goto l4
if not exists count.5 goto l5

del count.*

rem -- fall trhough -- and create first count-file

:l1
echo . > count.1
goto end

:l2
echo . > count.2
goto end

:l3
echo . > count.3
goto end

:l4
echo . > count.4
goto end

:l5
echo . > count.5

rem -- fall through -- goto end

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