FTP(FileTransferProtocol)是文件传输协议,通过它可以从计算机传输或
传输到计算机文件。FTP命令可以交互方式使用,也可以非交互方式使用。交互方
式的使用较简单,命令执行时系统会逐步提示,非交互方式的实现虽然复杂,但大
大方便使用者,因为FTP会自动完成所有的操作。我们在使用FTP命令时,为了操作
方便,往往会按非交互方式使用,下面笔者就介绍在SCOUNIX3.0下FTP实现非交互
方式的处理。
在UNIX系统下,使用RCP命令可以实现远程文件传输,但双方都必须为同一种系统,
如果远程为其它系统,则RCP就无能为力了。使用FTP命令不但可以实现非交互方式
传输方件,而且在双方使用不同系统时也能使用。UNIX下的FTP命令的使用与
WindowsNT有所区别,通过UNIX的帮助系统可以知道,FTP命令格式为:
ftp[-v][-d][-i][-n][-t][-g][host]
从命令格式中可以看出,其命令参数基本和在WindowsNT系统下差不多,但是没有
[-s:FILENAME]参数,也就是说,不能通过编辑一任意文本文件来实现非交互方
式传输文件,不过值得高兴的是,ftp命令在执行时会去寻找一文件名为.netrc的
文件,如果此文件存在并且其中有FTP命令行中指定的主机名,则会执行.netrc文
件中命令行。.netrc文件中放有远程主机名、注册用户名、用户口令和定义的宏,
其格式如下:
machine主机名
login用户名
password用户口令
macdefinit(定义宏)
binary
hash
get远程主机文件名本地文件名
bell
close
bye
在命令提示符下运行“ftp主机名”命令即可自动实现文件的传输。另外在UNIX下使用
FTP命令应注意下面的事项。
1、在.netrc文件中,如果使用password命令,其用户口令在文件中没有被加密,所
以必须对.netrc文件设置权限,可以在命令提示符下使用“chmod0600.netrc”命令
设置权限,即只有其文件主有读写权限,而其组成员及其它用户均不可有任何权限,
否则password命令无效,导致注册过程中断。
2、在.netrc文件中,如果使用macdefinit命令,则在其下一行可以输入FTP命令,
系统会自动执行这些命令且直到遇到一空行,也就是说在文件尾必须有至少一行空行,
否则会出现错误信息“Macro definition missing null line terminator”。
3、如果在UNIX系统下使用超级用户注册,则.netrc文件必须放在根目录下,如果使
用一般用户注册,则.netrc文件必须放在“/usr/用户名”目录下。
4、在UNIX系统下所有命令均为小写,包括FTP命令。