Файл журнала блокируется пакетом

#batch-file #logging #cmd #locking

#пакетный файл #ведение журнала #cmd #блокировка

Вопрос:

Я написал относительно большой пакетный скрипт (несколько вызовов, все вместе ~ 150 строк) и заметил проблему с файлом журнала, создаваемым указанным скриптом. Я использую файл журнала только с помощью команды echo, например echo this is a test >>test.log , других процессов записи или чтения файла нет. Большую часть времени он работает отлично, но примерно в одном случае из 20 сценарий завершается с ошибкой, потому что файл журнала заблокирован. Что может быть причиной этого?

РЕДАКТИРОВАТЬ: я просмотрел старые журналы, которые у меня были, и я думаю, что могу с уверенностью сказать, что ошибка всегда возникает после этой команды fciv.exe !currentPath! -r -wp -xml %~dp0sourcehash.xml >>%~dp0Server.log , так что это может быть проблемой с fciv.exe …

Комментарии:

1. Есть ли несколько пакетных файлов, которые могут вводиться одновременно? Этот файл будет заблокирован, если процесс чтения / записи в файл уже открыт при запуске нового.

2. Невозможно сказать без дополнительной информации.

3. @Arescet существует несколько пакетных файлов, но они не выполняются одновременно, все они вызываются основным командным файлом, который ожидает их завершения, прежде чем продолжить.

4. Можете ли вы выделить проблему и включить этот код?

5. @Marcs Я знаю, что это выглядит глупо без дополнительного контекста, но я не знаю, как указать: (Скрипт запускается каждый час и работает отлично, затем случайным образом первая команда echo при следующем запуске не работает. Я попытался погуглить его ofc и надеялся, что это известная проблема с исправлением….