create a batch file

create a batch file

am 23.10.2007 14:55:44 von king

#!\c\perl\bin
use strict;
my $register="e0010088";
open(fh,">check.bat")
print fh "\@echo\n";
print fh "\@echo Comparing X16 reg\n";
print fh "check $register > test.log\n";
print fh "fc /l log test.log > comp.log\n";
print fh "find \"no differences encountered\" comp.log\n";
print fh "if errorlevel 1 goto fail1\n";
print fh "echo fine\n";
print fh "del test.log\n";

close (fh);

while running this file to create a batch file I am getting a error
saying error at print.

I want to create a batch file named check.bat which should contain the
below things: and the $ register value need to be replaced.
===============
@echo
@echo Comparing X16 reg
check $register > test.log
fc /l log test.log > comp.log
find \"no differences encountered\" comp.log
if errorlevel 1 goto fail1
echo fine
del test.log
=================

Re: create a batch file

am 23.10.2007 17:03:04 von Michele Dondi

On Tue, 23 Oct 2007 12:55:44 -0000, king
wrote:

>print fh "\@echo\n";
>print fh "\@echo Comparing X16 reg\n";
>print fh "check $register > test.log\n";
>print fh "fc /l log test.log > comp.log\n";
>print fh "find \"no differences encountered\" comp.log\n";
>print fh "if errorlevel 1 goto fail1\n";
>print fh "echo fine\n";
>print fh "del test.log\n";

In addition to the other gotchas mentioned by others, consider using a
an here doc:

print $fh <<"EOBATCH";
\@echo
\@echo Comparing X16 reg
check $register > test.log
fc /l log test.log > comp.log
find "no differences encountered" comp.log
if errorlevel 1 goto fail1
echo fine
del test.log
EOBATCH


Michele
--
{$_=pack'B8'x25,unpack'A8'x32,$a^=sub{pop^pop}->(map substr
(($a||=join'',map--$|x$_,(unpack'w',unpack'u','G^ ..'KYU;*EVH[.FHF2W+#"\Z*5TI/ER 256),7,249);s/[^\w,]/ /g;$ \=/^J/?$/:"\r";print,redo}#JAPH,