James,
Thanks for correction..
for u r question regarding file open, following is
correct code
if (!(open(FH_SRC_SCRIPT, $src_script)))
{
print "(TERADATA.pl) generate_script::
File $src_script open failed --> $!\n";
return 0;
}
if (!(open(FH_TARGET_SCRIPT,
">$target_script")))
{
print "(TERADATA.pl) generate_script::
File $target_script open failed --> $!\n";
# close previously opened file
close(FH_SRC_SCRIPT);
return 0;
}
here i am closing previously opened file...
if i want to open a file in write mode, we have to
specify ">$file" right ?
does >$file will work ?
I will drop if m/...
Thanks
-Madhu
--- James Edward Gray II <[EMAIL PROTECTED]>
wrote:
> On May 5, 2004, at 12:26 PM, Madhu Reddy wrote:
>
> > following is my main script, to simulate that i
> > assigned to $_. Thanks for your solution
> >
> > if (!(open(FH_SRC_SCRIPT, "$src_script")))
> > {
> > close(FH_SRC_SCRIPT);
> > return 0;
> > }
>
> Yuck. What does that say? If we can't open() some
> file, close the
> file (huh?), and return. How about we simplify and
> pretty that up:
>
> open FH_SRC_SCRIPT, $src_script or return 0;
>
> That should do the exact same thing. Note I didn't
> quote the variable,
> as we don't need to.
>
> > if (!(open(FH_TARGET_SCRIPT, ">$target_script")))
> > {
> > close(FH_TARGET_SCRIPT);
> > return 0;
> > }
>
> See above.
>
> > while (<FH_SRC_SCRIPT>)
> > {
> > $replace_count +=
> > s/<EXPORT_IFILE>/$in_out_file_path/ if
> > (m/<EXPORT_IFILE>/);
> >
>
> if (m/.../) still isn't doing anything, as I've
> mentioned before. Drop
> it. s/.../.../ only replaces IF it finds a match.
>
> > $replace_count += s/<([A-Z_]+)_IFILE>/$repl/ if
> > (m/<([A-Z_]+)_IFILE>/);
>
> Again, drop the if m/.../.
>
> > print FH_TARGET_SCRIPT "$_";
>
> No need to quote a variable here.
>
> print FH_TARGET_SCRIPT $_;
>
> > }
>
> James
>
>
> --
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
> <http://learn.perl.org/>
> <http://learn.perl.org/first-response>
>
>
__________________________________
Do you Yahoo!?
Win a $20,000 Career Makeover at Yahoo! HotJobs
http://hotjobs.sweepstakes.yahoo.com/careermakeover
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>