# # loss of data while ftp using NET::FTP in perl.
APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

loss of data while ftp using NET::FTP in perl.

I've removed advertising from most of this site and will eventually clean up the few pages where it remains.

While not terribly expensive to maintain, this does cost me something. If I don't get enough donations to cover that expense, I will be shutting the site down in early 2020.

If you found something useful today, please consider a small donation.



Some material is very old and may be incorrect today

© March 2006 prapanna


Author: prapanna
Date: Wed Mar 22 20:27:36 2006
Subject: loss of data while ftp using NET::FTP in perl.

I have a simple script which does login, cwd and get - for a tar.gz file. But if file size goes beyond some limit, the resulting file seems to loose a few 100 bytes.

E.g:
On FTP server: 12685981 Mar 22 11:50 test.tgz
File pulled using per: 12685778 Mar 22 12:02 test.tgz

Not sure where I am going wrong. I would appreciate if you could give some pointers. Thanks.

Prapanna.



If you found something useful today, please consider a small donation.



Got something to add? Send me email.





(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

->
-> loss of data while ftp using NET::FTP in perl.

5 comments


Inexpensive and informative Apple related e-books:

Take Control of iCloud, Fifth Edition

Take Control of IOS 11

Take Control of Preview

Sierra: A Take Control Crash Course

Take Control of Pages





More Articles by © prapanna







Wed Mar 22 22:14:52 2006: 1809   TonyLawrence

gravatar
Did you set BINARY mode?





Thu Mar 23 18:58:09 2006: 1813   prapanna


Yes. Here's the script:

#!/usr/bin/perl -w
use Net::FTP;
my $ftp = Net::FTP->new("ftp.mydomain.com") or die "\nINFO: Cann't connect";
$ftp->binary();
$ftp->login("myid","mypasswd") or die "\nINFO: Failed to login";
print "\nINFO: Login successful. Now getting...";
$ftp->cwd("mydir") or die "\nINFO: Couldn't change directory\n";
$ftp->get("test.tgz");
$ftp->quit;
print "\ndone\n";

I also tried it without binary. But the problem persists. BTW, the 'put' for the same tarball goes thru perfectly fine.



Thu Jun 8 15:52:06 2006: 2083   anonymous


We saw the similar issue in our application. This was caused due to the link speed was reduced from 100mbps to 10mbps.

May be you would like to check on your link speed.



Wed Jun 21 22:47:00 2006: 2141   anonymous


the problem is that you are calling the binary method before authenticating with the ftp server...so you are really using ascii

move the binary line below the login line and you should be fine






Wed Jun 21 23:03:27 2006: 2142   TonyLawrence

gravatar
Good catch!

Thanks!

------------------------


Printer Friendly Version

Have you tried Searching this site?

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us


Printer Friendly Version





A crowded police docket is the surest of all signs that trade is brisk and money plenty. (Mark Twain)




Linux posts

Troubleshooting posts


This post tagged:

Forum



Unix/Linux Consultants

Skills Tests

Unix/Linux Book Reviews

My Unix/Linux Troubleshooting Book

This site runs on Linode