in reply to Re: How to find whether a file is present on remote server?
in thread How to find whether a file is present on remote server?

This node falls below the community's threshold of quality. You may see it by logging in.
  • Comment on Re^2: How to find whether a file is present on remote server?

Replies are listed 'Best First'.
Re^3: How to find whether a file is present on remote server?
by McDarren (Abbot) on Feb 28, 2006 at 09:35 UTC
    Yes, well... did you read the explaination of what the ls() method does?

    Let me help you out....

    $sftp->ls($remote [, $subref ]) Fetches a directory listing of $remote. If $subref is specified, for each entry in the directory, $subref will + be called and given a reference to a hash with three keys: filename, + the name of the entry in the directory listing; longname, an entry i +n a "long" listing like ls -l; and a, a Net::SFTP::Attributes object, + which contains the file attributes of the entry (atime, mtime, permi +ssions, etc.). If $subref is not specified, returns a list of directory entries, each + of which is a reference to a hash as described in the previous parag +raph.
    So.... all you do is call ls() on your remote directory, and then test whether or not $subref->{'yourfile'} exists. If it does, download it - if it doesn't, um.. don't.

    What about that can't be automated?

    (PS. I may not have that usage exactly correct - but if you've been able to write the script in the first place, I'm sure you can figure out the correct usage)