Re: script help request

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Try this. I am sure it could be done better but I think it will get the job done with minimum confusion to a person not very familiar with perl.

Just add your cross reference values to the %xref variable in the script.


#!/usr/bin/perl -w
%xref = ('81230','jsmith',
         '82111','mdoe',
        );

$dirName = '/my/directory';

opendir(DIR,$dirName) or die "Unable to open Directory: $dirName, $!\n";
while($fileName = readdir(DIR))
{
   if ($fileName =~ /^a_.{14}_b_.{7}_c_\d{2}_d_(\d{5}).*.txt$/)
   {
      $key = $1;
      if (defined($xref{$key}))
      {
         $newName = $fileName;
         $newName =~ s/$key/$xref{$key}/;

         print "Renaming $fileName -> $newName\n";
         rename("$dirName/$fileName","$dirName/$newName")
or die "Unable to rename file: $dirName/$fileName to $dirName/$newName, $1\n";
      }
   }
}
close(DIR);

-------- Original Message  --------
Subject: script help request
From: Anthony J Placilla <anthony_placilla@xxxxxxxx>
To: For users of Fedora Core releases <fedora-list@xxxxxxxxxx>
Date: 10/06/2006 08:07 AM

Ok, my perl-fu is non-existent.

I have a dir on an FTP server that contains multiple files that have a
naming structure like so

a_20061002201644_b_R01C002_c_30_d_81230_e_FOO_f_02_g_blah.txt

the value d_<whatever> will be a number that is actually can be mapped
to a name
for example, 81230 will be jsmith
82111 will be mdoe

etc.

I want to replace the number string with the name in each of, say 500
files & run it out of cron

pointers or clues would be welcome. I am militantly unopposed to using
*any* tool, (perl, php, sed & awk or waving dead chickens) to get the
job done



--
Murphy Says:
If you can't convince them, confuse them.
begin:vcard
fn:Paul Lemmons
n:Lemmons;Paul
org:Tucson Medical Center;Information Services
adr:;;5301 E. Grant Road;Tucson;AZ;85712;USA
email;internet:paul.lemmons@xxxxxxxxx
title:Lead Systems Software Engineer
tel;work:520-324-1034
tel;fax:520-324-1206
tel;pager:paullem@xxxxxxxxx
tel;home:520-722-2642
tel;cell:520-603-7392
x-mozilla-html:TRUE
url:http://www.tmcaz.com
version:2.1
end:vcard

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux