script help request

Paul Lemmons paul.lemmons at tmcaz.com
Fri Oct 6 17:18:05 UTC 2006


All you have to do is press send and you see an error.
            or die "Unable to rename file: $dirName/$fileName to 
$dirName/$newName, $1\n";
should read
            or die "Unable to rename file: $dirName/$fileName to 
$dirName/$newName, $!\n";

-------- Original Message  --------
Subject: script help request
From: Paul Lemmons <paul.lemmons at tmcaz.com>
To: For users of Fedora Core releases <fedora-list at redhat.com>
Date: 10/06/2006 10:14 AM
> 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 at SUTH.COM>
> To: For users of Fedora Core releases <fedora-list at redhat.com>
> 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:
Old programmers never die - they just abend. 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: paul.lemmons.vcf
Type: text/x-vcard
Size: 393 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/fedora-list/attachments/20061006/58424fbb/attachment-0001.vcf>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3257 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://listman.redhat.com/archives/fedora-list/attachments/20061006/58424fbb/attachment-0001.bin>


More information about the fedora-list mailing list