still getting the same error ...
If by "... the same error ..." you mean
Can't exec "/usr/bin/mailx uuencode $zipfile $zipfile -r -s": No such file or directory at ...
then you haven't read and/or understood poj's reply.
Use double-quotes to interpolate the $zipfile string into the $emailcmd string:
c:\@Work\Perl\monks>perl -wMstrict -le
"my $home = $ENV{'HOME'};
print qq{>$home<};
;;
my $zipfile = qq{$home/file.zip};
print qq{>>$zipfile<<};
;;
my $emailcmd = qq{/usr/bin/mailx uuencode $zipfile $zipfile -r -s};
print qq{>>>$emailcmd<<<};
"
>IsWhereTheHeartIs<
>>IsWhereTheHeartIs/file.zip<<
>>>/usr/bin/mailx uuencode IsWhereTheHeartIs/file.zip IsWhereTheHeartI
+s/file.zip -r -s<<<
Maybe see discussion of qq// et al and interpolation in perlop. (Basic problem is with string interpolation and not with existence of a file.)
Give a man a fish: <%-{-{-{-<
|