Sturdevant, Robert W Mr CTR USA AMC wrote:
> Hi list,
> 
> I asked this question a few days ago on the perl-win32-users list but
> still need some help. It seems what I need may not be possible.
> 
> I have a perl (5.6) SFTP client (Net::SFTP) that gets and puts files
> using either a full or relative path with the filename something like this:
> 
> $sftp->get( $remotename, $localname ); # where $remotename =
> '/Home/OUT/myfile.txt'
> 
> But I have a remote system with a custom server app that rejects the
> path and requires a chdir to the correct file location. To fetch a file
> I need to do something like this:
> 
> $sftp->chdir( $path );   #cd to the OUT folder
> $sftp->get( $shortname, $localname);   # get the file using only the
> file name
> 
> I see no way to do $sftp->chdir. Please advise if something similar is
> possible. I have tried many combinations of commands using SSH such as
> $ssh->cmd( 'cd $path' ) with no joy. $ssh->cmd() always seems to hang. TIA.

SSH doesn't support a cwd command - it is the job of the client to keep track of
where it is in the remote directory structure. You can establish the path to
your login directory by executing

  $sftp->do_realpath('.');

and after that you can specify either a path relative to that login directory or
an absolute path. The location of '.' never changes.

HTH,

Rob

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
http://learn.perl.org/


Reply via email to