Sponsored Content
Top Forums Shell Programming and Scripting Recursive FTP -- here at last. Post 40639 by Perderabo on Friday 19th of September 2003 01:59:56 PM
Old 09-19-2003
Remember the title of the thread...recursive ftp, not recursive copy. I wrote the first version of this when I was asked to sync a unix ftp server with an NT ftp server through two firewalls. That's quite a bit more than rsync can handle.

rsync depends on the berkeley remote shell command. That protocol is very insecure, perhaps the most insecure in existence. It always was unix specific and not that many unix shops still use it due to security. And I never seen a firewall configured to pass that protocol.

My script depends on the ftp protocol. Ftp won't win any awards for security either, but it does at least demand a password. Ftp is also widely available and I specificly included NT support.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Recursive FTP

I am trying to write a recursive FTP script and have come to a point where I need to test if the file is either a normal ascii file or a directory. My question is how do I test if the file is either ascii or directory. (1 Reply)
Discussion started by: aslamg
1 Replies

2. UNIX for Dummies Questions & Answers

recursive effect!!

I run the following command in some of my folders... and ended up with a huge mess!! find . -type f -exec perl -e 's/blabla/zzzxxxx/gi' -p -i.bak {} \; I had to kill the process and later when I checked with one of my folders.. ls vaditerm.dt.bak vaditerm.dt.bak.bak... (2 Replies)
Discussion started by: sskb
2 Replies

3. Shell Programming and Scripting

perl + Net::FTP::Recursive

Problem: It will not advance to the next user in the list. It always dies right after it sends the 2/2 files from the first users dir. $USERLIST="/export/home/mxdooley/perl_ftp/userlist"; $USER_DIR="/export/home/mxdooley/perl_ftp/homes";... (2 Replies)
Discussion started by: Optimus_P
2 Replies

4. Shell Programming and Scripting

recursive rcp

I wrote a shell script (AIX) to extract the file "/rep1/toto" from all the hosts referred in a list and send them to one local directory named ~/$host-$file with the hostname as prefix rcp -p user@host:/rep1/$file ~/$host-$file where file = toto ==> it works ! I would do the same thing... (6 Replies)
Discussion started by: Nicol
6 Replies

5. UNIX for Advanced & Expert Users

recursive sorting

In the ls command, -t option and -R option dont work simultaneously. ls -t ---> lists the files with sorting based on file date ls -R ---> lists the files recursively. How to make utilize both in the same command.? I want to sort the recursive files listing.. (1 Reply)
Discussion started by: fermisoft
1 Replies

6. Cybersecurity

Recursive SFTP

Hello, I need to transfer files from Serve1 to Server2. Previously I was using scp command. Now I have to use sftp (due to audit issues). The problem with sftp is (atleast to my level of knowledge) we cannot transfer dirs (and files within that dir). Is there a way to solve this? Looks like... (1 Reply)
Discussion started by: MohanTJ
1 Replies

7. UNIX for Dummies Questions & Answers

recursive wc on a directory?

Hi all, I need to count the number of lines in all the files under a directory (several levels deep). I am feeling extremely dumb, but I don't know how to do that. Needless to say, I am not a shell script wiz... Any advice? thanks in advance! (13 Replies)
Discussion started by: bimba17
13 Replies

8. UNIX for Dummies Questions & Answers

Recursive Permissions???

Is there anyway that I can change permissions on a directory and all its sub-directories and files using one single "chmod" command?? (5 Replies)
Discussion started by: the_red_dove
5 Replies

9. UNIX for Dummies Questions & Answers

recursive search and ftp

Could someone help me in recursive search and ftp'ing the files to remote server? The host machine will have /dir1/dira/list_of_files1 /dir1/dirb/list_of_files2 /dir1/dirc/list_of_files3 . . . so., I need to search from dir1 recursively (only one level down) and find all the files that... (1 Reply)
Discussion started by: brahmi
1 Replies

10. OS X (Apple)

Search recursive

before posting, I have tried to find my answer elsewhere. no luck. I need to find a file buried in a folder somewhere. Master folder has 10 sub folders. each sub folder has folders too. I found this but it does nothing I am on Mac and use Applescript. do shell script "find... (2 Replies)
Discussion started by: sbrady
2 Replies
ftpls(1)						      General Commands Manual							  ftpls(1)

       ftpls - generate a ftp directory listing

SYNOPSIS
ftpls ftp://host[:port]/directory or ftpls host[:post] /directory DESCRIPTION
ftpls generates a listing of files and directories in a FTP directory. ftpls by default prints a human readable ascii output, but may also create HTML and machine parsable output. OPTIONS
Login options -u, --user=NAME Use NAME to login on the ftp server. Note that this option overrides an user name given in an URL. The default is `anonymous'. Use an empty name to force to not log in. -p, --pass=PASSWORD Use PASS as password to login on the ftp server. Note that this option overrides a password given in an URL. The default is `anonymous@invalid.example'. Use an empty password to enforce not sending any password. --account=ACCOUNT Send ACCOUNT as the account name using the ACCT ftp command if the ftp servers asks for one. ACCOUNT in ftp speak is some kind of sub account in some other terminologies. If you don't understand what it means you have a good chance to never need this option anyway. If you think you need it please try the -u option first. --tries=NUMBER Number of tries to connect and log in. The default is 1, meaning that ftpls will give up after the first error. --login-sleep=NUMBER ftpls will sleep for NUMBER seconds after a try to connect or login has failed. The default is 5, a zero is treated as one, and abuse (especially together with --tries) is likely to annoy the server administrator. This option was added in version 0.4.5. Output mode options -h, --html Create HTML index containing all files together with modification time and size. Note: The links in this index will contain username and password if you include them into an URL given to ftpls on the command line (either as argument or through the --urlprefix option). They will not be included otherwise, for security and privacy reasons. -m, --machine Create machine parsable output. -t, --title=TEXT Title text to use on the HTML output. -U, --urlprefix=URL URL-Prefix to use in listings. If this option is not given then an URL given on the command line will be used instead, and if this has not been given an URL will be created from host, port and directory given on the command line. --print-dir Print the name of a sub directory before printing it's content. Do not print the name of the top level directory of the listing. Use this option together with --raw. Do not use it together with --html. SORTING -a, --alpha sort alphabetical. -z, --omega sort reverse alphabetical. -n, --newest sort youngest first. -o, --oldest sort oldest first. -s, --shortest sort shortest first. -l, --longest sort longest first. Other options --ascii-listings Do directory listings in ASCII mode instead of binary mode. Use this option if the FTP server is unable to correctly list directories in binary mode, for example, if you see a message like this: ftpls: failed to read directory listing: protocol error This option was added in version 0.5.2. -L, --list-options=OPTS Add OPTS to LIST command. This allows to pass arbitrary options to the FTP servers LIST command. Note that ftpls does not cope well with recursive directory listings. --interactive ftpls will read the directories to be listed from the standard input. Any remote directory given on the command line will be ignored. Each directory listing is terminated by a END-OF-LISTING line. Do not use this together with the --html option. This option was added in version 0.3.6. -R, --recursive Do a recursive directory listing by first printing one directory, including sub directory names, and then traversing into sub directories. --raw Output directory listings in the original format and sort order. -T, --timeout=SECONDS Timeout to use for network read/write and connect operations. The default is 30 seconds and is usually sufficient. This option was added in version 0.3.8. --force-select Do not use the poll() system call even if it's available, but use select(). This allows ftpls to be used together with the runsocks program from the socks5 reference implementation. Please note that you'll need a directly reachable name server anyway, as the DNS library in use does not support SOCKS (you can always use IP addresses). This option was added in version 0.3.8. --max-depth Descend at most LEVEL directories deep. 0 means do not enter sub directories at all, 1 means enter sub-directories, but not their sub-directories, and so on. This option enables the --recursive option, too. The default is 2^32-1, meaning enter all. This option was added in version 0.5.2. EXAMPLES
Generate a HTML index page ftpls --html --title "CVS tree index by date" --urlprefix ftp://ftp.ohse.de/uwe/cvs-trees/ --newest ftp://serak.ohse.de/uwe/cvs-trees > SOMEWHERE/cvs-trees/index-by-date.html AUTHOR
Uwe Ohse, uwe@ohse.de SEE ALSO
ftpcopy(1). The homepage may be more up-to-date, see http://www.ohse.de/uwe/ftpcopy.html. ftpcopy 0.5.2 ftpls(1)
All times are GMT -4. The time now is 08:15 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy