Hi,

opendir (DIR, $dir...);
@files = grep { -f "$dir/$_" && /*.H$/ } readdir DIR;
close DIR;
unlink @files; ## make sure here full path names are there.

Well, could someone clarify why unlink <*H> or unlink (glob (*H)) is not being 
discussed here ? This could have been more fast if size is more.
Just chdir $dir and then unlink...

Cheers.



--- On Thu, 11/13/08, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:

> From: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
> Subject: RE: How does one concatenate many files into one?
> To: [EMAIL PROTECTED], activeperl@listserv.activestate.com
> Date: Thursday, November 13, 2008, 5:05 PM
> 2. I have to run another perl script (grib2ctl.pl), is this
> how to do it
> (marked blue in the code below).
> 
>  You use the system command for this as below,
> system("perl grib2ctl.pl");
> 
> 3. I have to delete the files ending in H. Is unlink
> <*H>; the way?
>         first do the pattern matching like this,
>         $file_delete =~ /H$/;
>          and read the complete path like
>         $file_delete = /home/zilore/$file_delete;
>          system("rm $file_delete);
> 
>     Use for loop for the itteration to search all H files.
> 
> 
> --
> Regards,
> Mustafa
> 
> 
> 
> ________________________________
> 
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On
> Behalf Of zilore
> mumba
> Sent: Thursday, November 13, 2008 12:54 PM
> To: activeperl@listserv.activestate.com
> Subject: How does one concatenate many files into one?
> 
> 
> Esteemed Perl users,
> I have a perl script below which is meant to perform a
> couple of tasks,
> viz.,
> combine several files into one (marked blue in the code
> below). I have
> looked, without success, for the command which does this.
> 1. Help how do I do this (all files end in H)?
> 2. I have to run another perl script (grib2ctl.pl), is this
> how to do it
> (marked blue in the code below).
> 3. I have to delete the files ending in H. Is unlink
> <*H>; the way?
> 
> Assistance will be appreciated.
> Zilore
> 
> #
> #!/usr/bin/perl -w
> #This script processes UKMO model data from RETIM-SYNERGIE
> and archives
> it on
> #the ACMAD system. The cycles (or times) are 00 and 12.
> #
> use strict;
> use warnings;
> use POSIX;
> use File::Path;
> use File::Copy;
> #
> my $ctl_ext=".ctl";
> my $grib_ext=".grib";
> #
> my $UK_sufx="2";
> my $dash="-";
> my $model="ukmo";
> my @now = localtime;
> #
> my $dat = strftime "%Y%m%d", @now;
> my $dat1 = $dat + 1;
> my $hr = strftime "%H", @now;
> my $cycle = '00'; $cycle = '12' if $hr >
> 15;
> #
> my $model_mon=`date "+%m"`;
> my $mon_name=`date "+%B"`;
> my $yr=`date "+%y"`;
> #
> my
> $base_dir="/home/Mumba/archive/$model_mon$dash$mon_name$yr";
> #
>       chdir $base_dir/$model/$dat;
>       my @files =ls;
>         foreach my $file (@files) {
>             *H "." $file >
> $model$cycle$grib_ext;
> #cat *H > $model$cycle$grib_ext;
>       /usr/local/bin/grib2ctl.pl -verf
> $model$cycle$grib_ext >
> $model$cycle$ctl_ext;
>       /usr/local/grads/bin/gribmap -i $model$cycle$ctl_ext
> -v -e;
>       unlink <*H>;
>   #
>      
> rename("$base_dir/$model/$dat1/*H","$base_dir/$model/$dat");
>       my @files =ls;
>         foreach my $file (@files) {
>             *H "." $file >
> $model$cycle$grib_ext;
> #cat *H > $model$cycle$UK_sufx$grib_ext;
>       /usr/local/bin/grib2ctl.pl -verf
> $model$cycle$UK_sufx$grib_ext >
> $model$cycle$UK_sufx$ctl_ext;
>       /usr/local/grads/bin/gribmap -i 
> $model$cycle$UK_sufx$ctl_ext -v
> -e;
>       unlink <*H>;
>    #
> #
> date;
> exit 0;
> 
> 
> 
> 
> Please do not print this email unless it is absolutely
> necessary. 
> 
> The information contained in this electronic message and
> any attachments to this message are intended for the
> exclusive use of the addressee(s) and may contain
> proprietary, confidential or privileged information. If you
> are not the intended recipient, you should not disseminate,
> distribute or copy this e-mail. Please notify the sender
> immediately and destroy all copies of this message and any
> attachments. 
> 
> WARNING: Computer viruses can be transmitted via email. The
> recipient should check this email and any attachments for
> the presence of viruses. The company accepts no liability
> for any damage caused by any virus transmitted by this
> email. 
> 
> www.wipro.com
> _______________________________________________
> ActivePerl mailing list
> ActivePerl@listserv.ActiveState.com
> To unsubscribe:
> http://listserv.ActiveState.com/mailman/mysubs


      

_______________________________________________
ActivePerl mailing list
ActivePerl@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to