... $ftp1->cwd("$dir1") or $ErrFlg=1; push @ERRORS, "Can't cd to $dir1 $!\n" if $ErrFlg; myerr() if $ErrFlg; $ftp1->quit if $ErrFlg; $maxDepth=$maxDepth1; # Find function find ({preprocess => \&preprocess, wanted => \&wanted,}, ".");...but the find function doesn't run
I'm afraid there's a misconception of what FTP does. Logging into some remote machine (ftp server) does not automagically transfer execution of your script onto that remote machine (if that was the idea). Even after logging in and the cwd, the script itself will still run locally on the machine where you started it. In other words, when your script calls the find routine, it will scan a local directory, if anything...
Also, FTP may generally not be used to run arbitray commands remotely. It provides a predefined set of commands primarily intended for transferring files. You could get a directory listing of remote directories, but if you don't like the format the ftp server produces, you're essentially out of luck.
If you want to run Perl code (File::Find) remotely to produce the directory listing or do something else while traversing the directories, you need a remote shell/execution protocol, like SSH. Or mount/map the remote directory/filesystem into your local filesystem, as ig suggested. (Depending on your network setup, OS on local/remote machine, etc., one or the other option may not be available.)
In reply to Re: Comparing Directories on different servers
by almut
in thread Comparing Directories on different servers
by aryan
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |