1

Предположим, я вызываю родительский пакетный файл, как это

call parent.bat >Log.txt

и в parent.bat я вызываю другие командные файлы, которые сами вызывают другие ванные файлы.

Теперь происходит то, что командные файлы, запускаемые из parent.bat, показывают свои результаты в окнах консоли и не входят в Log.txt.

Есть ли способ заставить все запущенные дочерние пакетные файлы войти в Log.txt?

2 ответа2

1

Попробуйте "вызвать file1.bat >> log.txt 2> & 1"

Двойная стрелка важна, так как она указывает на добавление, а не на перезапись файла, иначе вы получите только результат последнего файла. 2> & 1 перенаправляет "STDERR" в "STDOUT"

0

После нескольких экспериментов я не смогу смоделировать ваш случай. Я просто сомневаюсь, что некоторые из ваших сообщений являются stderr. Если да, то попробуйте c:> call parent.bat> log.txt 2> & 1

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .