02-07-2006
I have found cURL (command-line URL) indispensable for writing scripts with FTP commands. It is available at
http://curl.haxx.se/ (both compiled binaries and source code).
It takes the place of the FTP client allowing not only puts and gets but deletes and directory listings. It also returns a detailed exit code for conditional evaluations.
For example, your original post could be handled with:
cd $DIR
for FILE in $REPORT.*
do
if curl -T $FILE -u $HOST_LOGIN:$HOST_PASSWD ftp://$HOST_ADDRESS/$FTPDIR/
then
echo "$FILE transferred"
else
echo "FTP of $FILE failed" 1>&2
fi
done
This is a simple example. It supports numerous protocols and has more options than letters in the alphabet. The usefulness of this utility in scripts is without measure.
Last edited by hegemaro; 02-07-2006 at 11:10 AM..
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
The following script is used to loop through files in the /tmp directory and transfer those files onto another server.
However, some of the files do not transfer. It is very random when the transferring is done (i.e. one of the files won't transfer then next time, that one will transfer and... (1 Reply)
Discussion started by: RLatham20
1 Replies
2. Shell Programming and Scripting
G'day,
I was wanting to write a shell script that checks an ftp server for the presence of new files, then get those files. In so much as the get, this is pretty straight forward, but I cannot work out how to get a list of files to check. Is it possible for a shell script to get the output of... (1 Reply)
Discussion started by: Elric of Grans
1 Replies
3. Shell Programming and Scripting
Dears,
I'm new in shell scripting and i need your help, i would like to know how can i create a script to ftp to a certain unix/linux machine/server IP address and get a file for example without user intervention? How can i force the script to use a certain username and password to access this... (4 Replies)
Discussion started by: Dendany83
4 Replies
4. Shell Programming and Scripting
Hi,
I am using the command find /apps/qualdb/gpcn/scripts/cab_outbound/archive -name 'z*' -mtime +28 -exec rm {} \;
in unix command prompt
for deleting the files in my unix system under the specfied folder. It was succesfull.
But when i running this command inside a shell script name... (2 Replies)
Discussion started by: Jayaram.Nambura
2 Replies
5. UNIX for Advanced & Expert Users
Hi ,
I need to ftp some input files from windows to unix server.All the files will be saved in the C drive in my machine.Currently all these files are transferring manually to the unix server.I need to write a shell script which ftp the files from windows to unix box.When I searched in the forum i... (1 Reply)
Discussion started by: kavithakuttyk
1 Replies
6. UNIX for Dummies Questions & Answers
Hi Guys Any Help
I have created a spool file that i need to copy onto another server using FTP in a shell script both servers are linux (3 Replies)
Discussion started by: itai
3 Replies
7. Emergency UNIX and Linux Support
Hi Guru's,
I am new to UNIX. my requirement is to log on to FTP server and get all the .txt files. i have developed one script by searching some forums but getting error and not able to fix them. pls see below code.
ftp -i-n<<EOF
open $FTP_HOST... (30 Replies)
Discussion started by: arund_01
30 Replies
8. Shell Programming and Scripting
Hi,
i use the below script to send a single file to remote server from linux.
ftp -nvi <<!EOF
open $Host_name
user $USER_ID $PWD
binary
mput $file_name
quit
!EOF (where i... (2 Replies)
Discussion started by: pradebban
2 Replies
9. Shell Programming and Scripting
Hello to all in forum
I hope you can help me.
I want to send via FTP to a linux server the 2 kind of files that are in the same folder, as follow:
1- Send all files that are named verified.SomeString.zz.pttp to path /var/verified
2- Send all files where the name begins with verified.conf... (3 Replies)
Discussion started by: Ophiuchus
3 Replies
10. Shell Programming and Scripting
Hi,
Im a newbie with programming and shell scripting. Im running OSX/Mac and Darwin.
I would like to create a shell script that would :
1. Search a Volume and directory (including subdirectories) for a file that :
* filename ends with ”_Highres.pdf” and
* the file creation date of... (8 Replies)
Discussion started by: NickeZ28
8 Replies
LEARN ABOUT OPENSOLARIS
ncftpls
ncftpls(1) General Commands Manual ncftpls(1)
NAME
ncftpls - Internet file transfer program for scripts
SYNOPSIS
ncftpls [options] ftp://url.style/host/path/name/
OPTIONS
Command line flags:
-1 Most basic format, one item per line.
-l Long list format.
-R Long list format, recurse subdirectories. Equivalent to "-x -lR".
-x -XX Additional ls flags to pass on to the server.
-u XX Use username XX instead of anonymous.
-p XX Use password XX with the username.
-P XX Use port number XX instead of the default FTP service port (21).
-d XX Use the file XX for debug logging.
-t XX Timeout after XX seconds.
-E Use regular (PORT) data connections.
-F Use passive (PASV) data connections. The default is to use passive, but to fallback to regular if the passive connection fails or
times out.
-r XX Redial a maximum of XX times until connected to the remote FTP server.
-W XX Send raw FTP command XX after logging in.
-X XX Send raw FTP command XX after each file transferred.
-Y XX Send raw FTP command XX before logging out.
The -W, -X, and -Y options are useful for advanced users who need to tweak behavior on some servers. For example, users accessing
mainframes might need to send some special SITE commands to set blocksize and record format information.
For these options, you can use them multiple times each if you need to send multiple commands. For the -X option, you can use the
cookie %s to expand into the name of the file that was transferred.
DESCRIPTION
The purpose of ncftpls is to do remote directory listings using the File Transfer Protocol without entering an interactive shell. This
lets you write shell scripts or other unattended processes that can do FTP.
The default behavior is to print the directory listing in columnized format (i.e. ls -CF), but that is not very useful for scripting. This
example uses the -1 flag, to print one file per line:
$ ncftpls -1 ftp://ftp.ncftp.com/pub/ncftp/
You can also do a remote "ls -l", by using "ncftpls -l". If you want to try other flags, you have to use them with the -x flag. For exam-
ple, if you wanted to do a remote "ls -lrt", you could do this:
$ ncftpls -x "-lrt" ftp://ftp.ncftp.com/pub/ncftp/
By default the program tries to open the remote host and login anonymously, but you can specify a username and password information like
you can with ncftpget or ncftpput.
DIAGNOSTICS
ncftpls returns the following exit values:
0 Success.
1 Could not connect to remote host.
2 Could not connect to remote host - timed out.
3 Transfer failed.
4 Transfer failed - timed out.
5 Directory change failed.
6 Directory change failed - timed out.
7 Malformed URL.
8 Usage error.
9 Error in login configuration file.
10 Library initialization failed.
11 Session initialization failed.
AUTHOR
Mike Gleason, NcFTP Software (mgleason@ncftp.com).
SEE ALSO
ncftpput(1), ncftpget(1), ncftp(1), ftp(1), rcp(1), tftp(1).
LibNcFTP (http://www.ncftp.com/libncftp/).
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Availability | SUNWncftp |
+--------------------+-----------------+
|Interface Stability | Volatile |
+--------------------+-----------------+
NOTES
Source for ncftp is available on http://opensolaris.org.
Software NcFTP ncftpls(1)