kukris Posted July 14, 2004 Posted July 14, 2004 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.txtThe log file is there but it's empty. How can I do this?Thanks in advance
sleepnmojo Posted July 14, 2004 Posted July 14, 2004 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.
kukris Posted July 14, 2004 Author Posted July 14, 2004 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 / XPthe command only creates an empty file.So is there a way to log the output to a file? Maybe a third party utility?
prathapml Posted July 17, 2004 Posted July 17, 2004 To log individual 'echo' commands, here is an example (section taken from my batch file):ECHO Installed Programs were not registered >> %systemroot%\Temp\instTime.logTo log entire runs of batch files (which is what you want), use mybat.bat >> c:\log.txtNote 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.
kukris Posted July 20, 2004 Author Posted July 20, 2004 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?
prathapml Posted July 22, 2004 Posted July 22, 2004 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).
tgf666 Posted October 31, 2012 Posted October 31, 2012 (edited) i guess i wanna use something like:test.bat > testlog.txt 2> testerrors.txtto create 2 logs of my batch. 1 for erros, 1 for anything elselet's pretend that this is my batch called test.bat:REM HelloREM Are you ready to keep on being logged?PauseREM I thought you were!Ekkonotice 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 October 31, 2012 by tgf666
jaclaz Posted October 31, 2012 Posted October 31, 2012 You need a "tee" command/app.See:http://www.robvanderwoude.com/unixports.phphttp://www.robvanderwoude.com/files/tee_nt.txthttp://www.commandline.co.uk/mtee/jaclaz
net_user Posted October 31, 2012 Posted October 31, 2012 > (will wipe out a txt file)>> (appends a txt file)
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now