Monday, August 29, 2016

FTP Commands

Introduction

The following information is provided as a reference for the File Transfer Protocol (FTP) commands. This document describes a typical process for an interactive and automated, batch FTP session running on a PC with Windows/XP and connecting to a UNIX system. This process may vary slightly depending on the hardware and software configurations of the local and remote systems.


We have made a significant effort to ensure the documents and software technologies are correct and accurate. We reserve the right to make changes without notice at any time. The function delivered in this version is based upon the enhancement requests from a specific group of users. The intent is to provide changes as the need arises and in a timeframe that is dependent upon the availability of resources.

An Interactive FTP Session

To start an FTP interactive session type "ftp" from a DOS Command window.
C:\> ftp 
The DOS prompt should be replaced with the FTP prompt. The FTP program is now running on the local system. A connection (or session) to a remote system has not been established.
The help command or ? (question mark) may be executed without being attached to a remote system and will do a print (usually to the screen) of the FTP commands. The following is an example of an FTP Command to display the FTP Help information.
ftp help
The following is a typical result of the help command running on a PC with Windows.
Commands may be abbreviated. Commands are:
!           delete      literal     prompt      send
?           debug       ls          put         status
append      dir         mdelete     pwd         trace
ascii       disconnect  mdir        quit        type
bell        get         mget        quote       user
binary      glob        mkdir       recv        verbose
bye         hash        mls         remotehelp
cd          help        mput        rename
close       lcd         open        rmdir
ftp
The following FTP Command will perform the FTP OPEN (make the connection) and display the following messages.
ftp  open domain.name 
Connected to domain.name
220 antigonous FTP server ready.
User (domain.name:(none)): User-Name
331 Password required for user-name
Password: password
230 User user-name logged in.
ftp
The following FTP Command will change the directory on the remote system and display the following message.
ftp> cd /web
250 CWD command successful.
ftp
The following FTP Command will find out the pathname of the current directory on the remote system and display the information.
ftp> pwd
257 "/web" is the current directory.
ftp
The following FTP Command will set the file transfer mode to ASCII (this is the default for most FTP programs) and display the information.
ftp> ascii
200 Type set to A.
ftp
The following FTP Command will copy a file(using ASCII mode) from the local system to the remote system and display the information.
ftp> put d:\simoweb1\filename.txt
200 PORT command successful.
Opening ASCII mode data connection for filename.txt
226 Transfer complete
ftp
The following FTP Command will set the file transfer mode to BINARY (the binary mode transfers all eight bits per byte and must be used to transfer non-ASCII files). ) and display the information.
ftp> binary
200 Type set to I.
ftp
The following FTP Command will copy a file (using BINARY mode) from the local system to the remote system and display the information.
ftp> put d:\simoweb1\filename.zip
200 PORT command successful.
Opening BINARY mode data connection for filename.zip
226 Transfer complete
ftp
The following FTP Command will exit the FTP environment (same as "bye") and display the information.
ftp> quit
221 Goodbye.
When the preceding FTP Command is finished the DOS prompt will be displayed.
C:\>
The preceding is a typical process for an interactive FTP session running on a PC with Windows/XP or Windows/7 and connecting to a UNIX system. This process may vary slightly depending on the hardware and software configurations of the local and remote systems.

An Automated, Batch FTP Session

The following batch file (UPWIP001.BAT) will start an FTP session and pass the name of a text file (UPWIP001.TXT) to the FTP program. This text file will be processed by the FTP program and each of the statements in the text file will be processed in the sequence they appear.
@echo OFF
rem  * *******************************************************************
rem  *               FTPSAME1.CMD - a Windows Command File               *
rem  *         This program is provided by SimoTime Enterprises          *
rem  *           (C) Copyright 1987-2013 All Rights Reserved             *
rem  *             Web Site URL:   http://www.simotime.com               *
rem  *                   e-mail:   helpdesk@simotime.com                 *
rem  * *******************************************************************
echo *
echo * This batch and text file illustrate the use of FTP to upload an
echo * ASCII file and an EBCDIC or Binary file. The UPWIP001.BAT file
echo * references UPWIP001.TXT that contains...
echo *
echo *   user
echo *   password
echo *   cd /web
echo *   pwd
echo *   ascii
echo *   put d:\simoweb1\cbltxn01.htm
echo *   binary
echo *   put d:\simoweb1\cbltxn01.zip
echo *   quit
echo *
ftp -s:upwip001.txt www.simotime.com
The following is a listing of the contents of the text file (UPWIP001.TXT).
user
password
cd /web
pwd
ascii
put d:\simoweb1\cbltxn01.htm
binary
put d:\simoweb1\cbltxn01.zip
quit

An FTP Command List

The following is a summary of the commonly used FTP Commands.
CommandDescription
!Preceding a command with the exclamation point will cause the command to execute on the local system instead of the remote system.
?Request assistance or information about the FTP commands. This command does not require a connection to a remote system.
asciiSet the file transfer mode to ASCII (Note: this is the default mode for most FTP programs).
bellTurns bell mode on / off. This command does not require a connection to a remote system.
binarySet the file transfer mode to binary (Note: the binary mode transfers all eight bits per byte and must be used to transfer non-ASCII files).
byeExit the FTP environment (same as quit). This command does not require a connection to a remote system.
cdChange directory on the remote system.
closeTerminate a session with another system.
debugSets debugging on/off. This command does not require a connection to a remote system.
deleteDelete (remove) a file in the current remote directory (same as rm in UNIX).
dirLists the contents of the remote directory.The asterisk (*) and the question mark (?) may be used as wild cards.
getRemoteName LocalName
helpRequest a list of all available FTP commands. This command does not require a connection to a remote system.
lcdChange directory on your local system (same as CD in UNIX).
lsList the names of the files in the current remote directory.
mgetCopy multiple files from the remote system to the local system.
Note: You will be prompted for a "y/n" response before copying each file.
mkdirMake a new directory within the current remote directory.
mputCopy multiple files from the local system to the remote system. (Note: You will be prompted for a "y/n" response before copying each file).
openOpen a connection with another system.
putCopy a file from the local system to the remote system.
pwdFind out the pathname of the current directory on the remote system.
quitExit the FTP environment (same as "bye"). This command does not require a connection to a remote system.
rmdirRemove (delete) a directory in the current remote directory.
traceToggles packet tracing. This command does not require a connection to a remote system.
  A List of FTP Commands

FTP Command, DIR

The DIR command will list the contents of the remote directory.The asterisk (*) and the question mark (?) may be used as wild cards.
ParametersDescription
b*This will display all entries that start with the letter "b". For example, the following will be displayed.
bet, ben, bingo, born, boon, bipartisan, bandit, boy
b*n*This will display all entries that start with the letter "b" and have the letter "n" somewhere after the letter "b". For example, the following will be displayed.
ben, bingo, born, boon, bipartisan, bandit
The following will not be displayed.
bet, boy
b?nThis will display all entries that start with the letter "b", have the letter "n" in the 3rd position and have a three character name. For example, the following will be displayed.
ben
The following will not be displayed.
bet, bingo, born, boon, bipartisan, bandit, boy
b?n*This will display all entries that start with the letter "b" and have the letter "n" in the 3rd position. For example, the following will be displayed.
ben, bingo, bandit
The following will not be displayed.
bet, born, boon, bipartisan, boy
  A List of Parameters for the DIR FTP Command

An FTP Extended Command List

The following are additional commands that are used when tranferring files between an IBM Mainframe and a Windows or UNIX client system. Also, the following includes commands required when working with files containing variable length records.
CommandDescription
literalWill send an argument to the remote FTP Server. This statement is similar in purpose as the "QUOTE" statement.
locsiteLOCSITE This statement may be used at the mainframe for commands specific to the mainframe
quoteWill send an argument to the remote FTP Server. This statement is similar in purpose as the "LITERAL" statement.
siteThis parameter is used at the client system to transfer a function (via the LITERAL or QUOTE statement) to the host site. The following is a summary of the commonly used SITE/LOCSITE Commands.
  A List of Extended FTP Commands

LOCSITE, LITERAL and SITE

This SITE (via the literal or quote command) statement is used at the client system and the LOCSITE command is used at the host system. Both statements are used to transfer a function to the host site. The following is a summary of the commonly used SITE/LOCSITE Commands.
CommandDescription
BLKSIZEBLocKSIZE=nnnn where nnnn is the block size (BLKSIZE)
CYLINDERSCYlinders To indicate that space should be allocated in cylinders
DIRECTORYDIrectory=nnn where 'nnn' indicates the number of directory blocks to be allocated for the directory of a PDS
LRECLLRecl=nnn where nnn is the logical record length (LRECL)
PRIMARYPRImary=nnn where nnn indicates the number of primary space units (tracks or cylinders)
RDWRDW will cause each record of a variable length record to be preceded with a four byte Record Descriptor Word (RDW) and possible four byte Block Descriptor Word (BDW).
RECFMRECfm=format where format is: F, FA, FB, FBA, FBM, FM, U, V, VA, VB, VBA, VBM, or VBS
SECONDARYSECondary=nnn where nnn indicates the number of secondary space units (tracks or cylinders)
TRACKSTRacks To indicate that space should be allocated in tracks.
  Parameters used with the LOCSITE Extended FTP Commands
The following is an example of the LITERAL command and a GET command. The commands are executed at the client and will cause the RDW (Record Descriptor Word) to be included at the beginning of each record of a file with variable length records.
LITERAL SITE RDW
GET host-file-name client-file-name
The following is an example of the LOCSITE command and a PUT command. The commands are executed at the host and will cause the RDW (Record Descriptor Word) to be included at the beginning of each record of a file with variable length records.
LOCSITE RDW
PUT host-file-name client-file-name
The following is an example of the LOCSITE command for accessing tape files with variable length recoerds. The command is executed at the host and will cause the RDW (Record Descriptor Word)to be included at the beginning of each record of a file with variable length records.
LOCSITE RDW READTAPEFORMAT=V 
PUT host-file-name client-file-name

No comments:

Post a Comment