Jump to content

Recommended Posts

Posted

Hi there,

I have a batch file with many commands and want the results in saved in a log file.

I tried the following:

mybat.bat > c:\log.txt

The log file is there but it's empty. How can I do this?

Thanks in advance


Posted

It all depends on what you are doing. If your bat file only outputs error messages, you will have to grab those too. If you just want standard output messages, what you have is fine.

Check the permissions on the file. I would assume if you can create a file, you would have write access. What you have works perfectly fine.

Posted

I want all messages, just as they appear in the DOS-Windows. I forget to mention that I use this for a Windows 98 Custom Installation and unlike Windows 2000 / XP

the command only creates an empty file.

So is there a way to log the output to a file? Maybe a third party utility?

Posted

To log individual 'echo' commands, here is an example (section taken from my batch file):

ECHO Installed Programs were not registered >> %systemroot%\Temp\instTime.log

To log entire runs of batch files (which is what you want), use

mybat.bat >> c:\log.txt

Note the double arrows, instead of single. That is needed because '>' will create/overwrite a file, but '>>' will create/add to a text file. This works in win98.

Posted

Thanks, I tried that, but with no luck. The log file will be created, but it is always empty. I even made a batch file that produces an error, but not even that is logged. I don't use long filenames and neither executing it from a DOS-Windows nor from Start--> run nor calling the batch file from another batch file does make a difference.

Any Ideas? Perhaps an extra DOS utility?

Posted
Thanks, I tried that, but with no luck. The log file will be created, but it is always empty.

That could be because you have set a

@ECHO OFF

line in your batch file (the one to be logged).

  • 8 years later...
Posted (edited)

i guess i wanna use something like:

test.bat > testlog.txt 2> testerrors.txt

to create 2 logs of my batch. 1 for erros, 1 for anything else

let's pretend that this is my batch called test.bat:

REM Hello

REM Are you ready to keep on being logged?

Pause

REM I thought you were!

Ekko

notice the flawed "command" on the last line for which i'd expect an entry in testerrors.txt.

however, when i use said command, i do not see the execution of the batch in my console (although it IS being executed). i can press "any key" to end the pause but i don't see _anything_ in my console window - like being in the dark.

the logs are created exactly as i expect - but i wanna still see my batch running in console so i know if i can really end the pause without looking into the txt file manually.

how can i get my 2 logs and STILL see my execution running?

Edited by tgf666

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...