12-19-2007
Having a problem with a FTP Script using perl
Hello All,
I have a problem that has me stumped. I am using perl to do some ftp'ing of files. I have the script in place on another environment that is functioning flawlessly. But after tweaking it to the new environment I can't get it to function. I have a search string that searches for the file name and then executes the file and deletion of that file after the ftp. The only difference between the two environments is the file name is slightly different. Any help would be greatly appreciated. I use a XML file that contains the host information. I have included the following information:
Functioning Environment:
File Defination:file.serv1.YYYYMMDDhhmm-[0-9]{4}.log
File name: file.serv1.200712192300-0500.log
XML File Info:
<host_list hostname="serv1" althostname="" username="ftpuser" password="passwd">
<file_list>
<remote_dir>/app/logs</remote_dir>
<local_dir>targetlocation/targetdirectory</local_dir>
<remote_name>file.serv1.YYYYMMDDhhmm-[0-9]{4}.log</remote_name>
</file_list>
FTP PERL File:
$searchFilter = $remoteName."\$";
$searchFilter =~ s/YYYYMMDDhhmm/[0-9]{12}/;
@files = sort grep (/$searchFilter/, @files);
Non-Functioning Environment:
File Defination: fileYYYYMMDD.log
File name: file20071219.log
XML File Info:
<host_list hostname="serv1" althostname="" username="ftpuser" password="passwd">
<file_list>
<remote_dir>/app/logs</remote_dir>
<local_dir>targetlocation/targetdirectory</local_dir>
<remote_name>fileYYYYMMDD.log</remote_name>
</file_list>
FTP PERL File:
$searchFilter = $remoteName."\$";
$searchFilter =~ s/YYYYMMDD/[0-9]{8}/;
@files = sort grep (/$searchFilter/, @files);
Any Ideas?
Thanks in Advance.
Last edited by scottzx7rr; 12-19-2007 at 05:43 PM..
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi,
I'm writing an ftp script that is trying to connect to a remote NT box. Here is my script:
ftp -i ipaddress
user username password
ascii
cd db_Backup
lcd /home/dB_backups
put *.sql
bye
When I run this script I get the following error:
500 'AUTH GSSAPI': command not... (2 Replies)
Discussion started by: vancouver_joe
2 Replies
2. Shell Programming and Scripting
Hi,
Firstly, I would like to admit that I am a scripting newb. :)
Now, to my question:
I am writing a script that FTPs a bunch of logs from one server to another, it will be scheduled in Cron to run every 20 minutes.
Currently, the file transfer part of the script is fine. However,... (2 Replies)
Discussion started by: reebz
2 Replies
3. Shell Programming and Scripting
We have a script where we're trying to ftp to an outside ftp server, but it keeps failing with the error:
421 Service not available, remote server has closed connection
if we ftp <server> and manually enter the username and password from the Unix box it's just fine.
But when we try to... (1 Reply)
Discussion started by: lawadm1
1 Replies
4. Shell Programming and Scripting
I found this very useful perl script that will check a remote ftp server, search for files of a specific time and get them. When I run the script it works, but it gave me the following error:
Couldn't get filename_12-13-07.txt Bad file number
What in this script would cause this? I know... (2 Replies)
Discussion started by: bbbngowc
2 Replies
5. Solaris
Hi Everybody,
I am working on FTP Script (i,e Parser.sh,Upload.sh) and the contents of the same are mentioned below ..,
#!/bin/bash
if ; then
echo "Usage
./Parser.sh IP USERNAME PASSWORD SOURCE FILENAME DESTINATION
where
IP ------------- IP address of remote... (0 Replies)
Discussion started by: prasanth_babu
0 Replies
6. Shell Programming and Scripting
Hello,
I've written a Perl script that copies a set of files from one server to another.
Prior to transferring a file the script gets the file size from the source system and compares this to the file size received in the target system.
Except that the file sizes are slightly different.
... (1 Reply)
Discussion started by: mbb
1 Replies
7. Shell Programming and Scripting
Hi all,
I am having problem while using FTP in shell script.I am downloading a file from other machine.Part of file name is known to me(in red)
20100114123814.portin.virginsubs.extract
What i am doing is trying to get the file using get command with wild card "*" (see below) but it fails... (1 Reply)
Discussion started by: vinoo128
1 Replies
8. Shell Programming and Scripting
this script should search directories read,,search for file for daily reports. you must provide the beginning day, ending day and month.
this script will pull files for days and month specified and Ftp them to another server.
Thanks for any help you provide (2 Replies)
Discussion started by: lemseffert
2 Replies
9. Shell Programming and Scripting
Hi,
I am using below piece of code to get the size of the remote file.
$ftp->cwd($destination) or $error=$ftp->message;
if(!$error)
{
$ftp->put($file) or $error=$ftp->message;
print "FTP size = \n";
... (3 Replies)
Discussion started by: FarooqOnline
3 Replies
10. Shell Programming and Scripting
Need assistance
I have a script which i can download the files from ftp server using perl . But i want to download multiple files at a time
#!/usr/bin/perl -w
use Net::FTP;
$ftp = Net::FTP->new("ftp.ncdc.noaa.gov");
$ftp->login('username', 'password');
$ftp->cwd("<dir>");... (9 Replies)
Discussion started by: ajayram_arya
9 Replies
LEARN ABOUT OSX
test::script
Test::Script(3) User Contributed Perl Documentation Test::Script(3)
NAME
Test::Script - Basic cross-platform tests for scripts
DESCRIPTION
The intent of this module is to provide a series of basic tests for 80% of the testing you will need to do for scripts in the script (or
bin as is also commonly used) paths of your Perl distribution.
Further, it aims to provide this functionality with perfect platform-compatibility, and in a way that is as unobtrusive as possible.
That is, if the program works on a platform, then Test::Script should always work on that platform as well. Anything less than 100% is
considered unacceptable.
In doing so, it is hoped that Test::Script can become a module that you can safely make a dependency of all your modules, without risking
that your module won't on some platform because of the dependency.
Where a clash exists between wanting more functionality and maintaining platform safety, this module will err on the side of platform
safety.
FUNCTIONS
script_compiles
script_compiles( 'script/foo.pl', 'Main script compiles' );
The "script_compiles" test calls the script with "perl -c script.pl", and checks that it returns without error.
The path it should be passed is a relative unix-format script name. This will be localised when running "perl -c" and if the test fails the
local name used will be shown in the diagnostic output.
Note also that the test will be run with the same perl interpreter that is running the test script (and not with the default system perl).
This will also be shown in the diagnostic output on failure.
script_runs
script_runs( 'script/foo.pl', 'Main script runs' );
The "script_runs" test executes the script with "perl script.pl" and checks that it returns success.
The path it should be passed is a relative unix-format script name. This will be localised when running "perl -c" and if the test fails the
local name used will be shown in the diagnostic output.
The test will be run with the same perl interpreter that is running the test script (and not with the default system perl). This will also
be shown in the diagnostic output on failure.
SUPPORT
All bugs should be filed via the bug tracker at
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Script <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Script>
For other issues, or commercial enhancement and support, contact the author.
AUTHOR
Adam Kennedy <adamk@cpan.org>
SEE ALSO
prove, <http://ali.as/>
COPYRIGHT
Copyright 2006 - 2009 Adam Kennedy.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included with this module.
perl v5.16.2 2009-11-23 Test::Script(3)