http://www.perlmonks.org?node_id=977801


in reply to redirection problem

What can be the reason, that script.pl > output.txt creates empty file output.txt and perl script.pl > output.txt creates output.txt with data produced by script.pl?

Does the execution of the first command produce any errors on STDERR (the cmd/dosbox/shell/terminal)?

What does the first line of script.pl look like?

What kind of a shell/terminal are you using?

Cheers, Sören

Replies are listed 'Best First'.
Re^2: redirection problem
by grizzley (Chaplain) on Jun 22, 2012 at 09:29 UTC
    No, there are no errors on STDERR:
    C:\>type script.pl #!perl print 'abc' C:\>script.pl > noperl.txt C:\>perl script.pl > perl.txt C:\>type noperl.txt C:\>type perl.txt abc C:\>assoc .pl .pl=Perl C:\>ftype Perl Perl="C:\Perl64\bin\perl.exe" "%1" %*
    I use standard Windows console.

      Do a  dir scrip*

      Also try

      #!/usr/bin/perl -- use strict; use warnings; use File::Find::Rule; use Env qw/ @PATH /; use Data::Dump; dd( find( 'file', 'name', qr/script/i, 'maxdepth', 1, 'in', \@PATH)); __END__
        You mean I have another script with the same name? No, it happens with all scripts I write, there must be some setting in the system or maybe this specific ActivePerl 5.14.2 + Win 7 configuration. Previously on Win XP with ActivePerl 5.12 it was working fine (I'll try to install 5.12 in a moment to check this).