⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jkl.txt

📁 this a c progrmmme ,and under unix programmme
💻 TXT
📖 第 1 页 / 共 5 页
字号:

bin

mput *.doc

 

machine ncr3550 login jdx password jdx1jdx

 

       在此配置文件中,我们针对两个主机定义了自动登录,对于tirc主机,这时我和本书的另一位作者交换书稿的方式:定义了init宏用于自动获取他的书稿,定义了宏putbook用于传送我的书稿。获取书稿是自动的,传送书稿得手工执行宏putbook。对于ncr3550主机,只是自动登录。定义了此文件后,要交换书稿就只要执行下面的命令就行了:

$ ftp tirc.dcs.tsinghua.edu.cn

ftp>$putbook

ftp>quit

3.7  远程主机间文件传送
       我们前面介绍了ftp命令都是用于本地主机和远程主机间的文件传送,其实,ftp程序还提供了两个远程主机之间文件传送的能力,这要使用第二连接。

       ftp程序用于第二连接的子命令是proxy,一般来说,第一个由proxy启动的子命令是open,它建立第二连接。在第二连接建立完成之后,我们可以使用get和put等命令传输文件。值得注意的是,在第二连接上执行get和mget子命令将主连接主机上的文件拷贝到第二连接的主机,而put、mput和append则将第二连接主机上的文件拷贝到主连接主机上。也就是说,使用了第二连接后,第二连接的远程主机扮演了本地主机的角色。下面我们以一个实际的例子来说明远程主机间文件传送。

$ ftp ncr3550

Connected to ncr3550.cic.tsinghua.edu.cn.

220 ncr3550 FTP server (Version 1.18 Oct 08 1993) ready.

331 Password required for jdx.

230 User jdx logged in.

ftp> proxy open tirc.dcs.tsinghua.edu.cn

Connected to tirc.dcs.tsinghua.edu.cn.

220 tirc FTP server (Version wu-2.4(1) Wed May 10 21:00:32 CDT 1995) ready.

Name (tirc.dcs.tsinghua.edu.cn:jdx):

331 Password required for jdx.

Password:

230 User jdx logged in.

ftp> proxy get file1.txt file1

tirc.dcs.tsinghua.edu.cn:227 Entering Passive Mode (166,111,80,16,6,121)

ncr3550.cic.tsinghua.edu.cn:200 PORT command successful.

ncr3550.cic.tsinghua.edu.cn:150 Opening ASCII mode data connection for file1.txt

 (81470 bytes).

tirc.dcs.tsinghua.edu.cn:150 Opening ASCII mode data connection for file1.

tirc.dcs.tsinghua.edu.cn:226 Transfer complete.

ncr3550.cic.tsinghua.edu.cn:226 Transfer complete.

local: file1 remote: file1.txt

ftp> proxy put file2.txt file2

tirc.dcs.tsinghua.edu.cn:227 Entering Passive Mode (166,111,80,16,6,131)

ncr3550.cic.tsinghua.edu.cn:200 PORT command successful.

ncr3550.cic.tsinghua.edu.cn:150 Opening ASCII mode data connection for file2.

tirc.dcs.tsinghua.edu.cn:150 Opening ASCII mode data connection for file2.txt (2

8064 bytes).

tirc.dcs.tsinghua.edu.cn:226 Transfer complete.

ncr3550.cic.tsinghua.edu.cn:226 Transfer complete.

local: file2.txt remote: file2

ftp> proxy close

tirc.dcs.tsinghua.edu.cn:221 Goodbye.

ftp>

       首先用ftp命令和主机ncr3550建立主连接,然后用proxy open命令和主机tirc建立第二连接。使用proxy ?可以查看到在第二连接上执行的ftp子命令。我们可以使用dir和proxy dir分别查看主连接主机ncr3550和第二连接主机tirc上的文件,然后用proxy get命令将ncr3550上的文件file1.txt取到tirc主机并以file1存盘,用proxy put命令将tirc上的文件file2.txt取到ncr3550主机并以file2存盘。现在再用dir和proxy dir查看,我们发现ncr3550主机上多了文件file2,tirc主机上多了文件file1,这正是我们要做的。最后用proxy close关闭第二连接,它并不影响主连接,这时用户还可以在本地主机和ncr3550之间进行正常的文件传送。

3.8  使用mail请求匿名FTP服务
       有经验的ftp用户都知道,在从国外的FTP服务器上下载文件是一个极需耐心的过程,有时候,开列一个长格式的大型目录就要花费数十分钟。如果能用mail请求匿名FTP服务,对于网络不畅的用户来说,实在是一件快意的事。所幸的是,Internet上就有这样热心的专家──Paul Uixie,当他还在DEC网络系统实验室(1989-1993)时,他编写了一个叫ftpmail 的程序。自从有了ftpmail程序,你就可以使用mail请求匿名FTP服务了。

       为了使用ftpmail程序,只需向一个ftpmail服务器发送一个电子函件。在Internet上有多个ftpmail服务器,最常用的一个是ftpmail的发源地ftpmail@decwrl.dec.com。在给ftpmail服务器的请求邮件中,主题行被忽略,但你可以使用它来说明该ftpmail请求,因为ftpmail向用户邮寄回的邮件使用相同的主题行,这在一次发出多个ftpmail请求邮件时特别有用,它可以帮助你识别寄回的邮件是哪个请求邮件的结果,请求邮件的正文用来书写匿名FTP命令,一个命令一行,它用来引导匿名FTP会话的进行。

       在使用ftpmail之前,我们可以向ftpmail@decwrl.dec.com发出一个邮件请求ftpmail帮助信息,这只要简单地发送这样一个邮件:

$ mail ftpmail@decwrl.dec.com

         Subject: Request for help

         help

         CTRL-D

         EOT

         $

       不用等多长时间,你就会收到一个邮件,该邮件介绍了ftpmail程序支持的命令、注意事项及几个使用示例。我们可以看到,现在的ftpmail程序支持下面几类命令:

1.    指定邮件地址

       reply 电子函件地址    由于邮件头部地址经常出现错误,使用reply命令显示指定回复邮件的地址比较可靠。

2.    连接到主机

       connect [主机名 [用户 [口令]]]       连接到指定的FTP服务器,默认为匿名FTP服务器 gatekeeper.dec.com。

3.    设置选项

       ascii                      要邮寄的文件为文本文件。

       binary                   要邮寄的文件为二进制文件。

       compress                     使用Lempel-Zic编码压缩二进制文件。

       compact                使用Huffman编码压缩二进制文件。

       uuencode               使用uuencode将二进制文件转换为文本文件。

       btoa                      使用btoa将二进制文件转换为文本文件。

       chunksize 长度     设置文件分片大小。对于大型文件ftpmail将其分解为多个文件寄回,chunksize用来设置分片的大小、默认长度为64000字节。

4.    指定目录

       chdir 目录            改变当前工作目录为指定目录。

5.    请求文件

       get文件                请求ftpmail,邮寄指定文件的拷贝,在一个ftpmail会话中,最多只能有10个get命令。

6.    请求信息

       help                      请求邮寄ftpmail的使用说明。

       dir[目录]               请求邮件长格式目录清单。

       ls [目录]               请求邮件短格式目录清单。

       index匹配项         在FTP服务器的索引中查找匹配的信息。

7.    结束会话

       quit                       终止会话,忽略后面的报文,这在你的邮件使用了签名文件.signature时有用。

       从上面的命令可以看出,ftpmail的用法是很简单的,比如说,在gatekeeper.dec.com主机的/pub/mail/user-agents/misc/unsplit目录下有一些合成邮件的工具,我们可以发送一个邮件来查看它的下面有哪些文件:

$ mail ftpmail@decwrl.dec.com

Subject: list of unsplitters

reply jdx@cic.tsinghua.edu.cn

connect

ascii

chdir /pub/mail/user-agents/misc/unsplit

dir *

CTRL-D

EOT

$

       之后,我们将先后收到三个邮件:第一个是确认请求邮件,其主题行类似于Subject: your ftpmail request has been received [list of unsplitters],它确认收到了请求邮件,并告诉你请求邮件在请求队列中所处的位置,以及一些其它注意事项;第二个邮件是请求内容邮件,如上面的请求邮件的请求内容邮件为:

Date: Tue, 11 Jun 96 10:08:06 -0700

From: "ftpmail service on ftpmail.ramona.vix.com" <nobody@pa.dec.com>

To: jdx@cic.tsinghua.edu.cn

Subject: part 001 of dir * (/pub/mail/user-agents/misc/unsplit@gatekeeper.dec.com) [list of unsplitters] (ascii, last)

X-Complaints-To: ftpmail-admin@ftpmail.ramona.vix.com

X-Service-Address: ftpmail@ftpmail.ramona.vix.com

X-Job-Number: 834315027.04715

Precedence: bulk

Reply-To: <nobody@ftpmail.ramona.vix.com>

X-UIDL: 834543808.002

 

lrwxrwxrwx   1 0        0             40 Apr 14  1995 00README-Legal-Rules-Regs -> ../../../../../00README-Legal-Rules-Regs

-r--r--r--   1 0        0           3251 Aug  8  1991 extract.dcl

-r--r--r--   1 0        0           3274 Aug 13  1991 shuttle.ksh

-r--r--r--   1 0        0           5124 Aug 12  1991 uucombine.pl

-r--r--r--   1 0        0           5841 Jan  2  1992 uunconc.c

-r--r--r--   1 0        0           4956 Aug  8  1991 uustrip.shar

       第三个邮件是请求结果邮件,它报告请求的结果,其主题行类似于Subject: results of ftpmail request 834315027.04715 [list of unsplitters],此邮件向你报告你的请求邮件的每一步执行结果。

       这样,我们就知道我们的请求的结果,并且得到了该目录的文件列表。然后,我们用下面的邮件将其中一个程序uunconc.c取回来:

$ mail ftpmail@decwrl.dec.com

Subject: get uunconc.c

reply jdx@cic.tsinghua.edu.cn

connect

ascii

chdir /pub/mail/user-agents/misc/unsplit

get uunconc.c

CTRL-D

EOT

$

       同样,我们将收到三个邮件:确认邮件、内容邮件和结果邮件。我们将内容邮件的正文写到uunconc.c文件中(Unix mail用~w uunconc.c子命令),然后将其编译成可执行程序uunconc。以后,我们就可以使用uunconc程序来合并我们使用email请求的大型文件了。

       在Internet上,邮件服务器都很繁忙,下面我们介绍几个ftpmail服务器的地址:

法国
 ftpmail@grasp.insa_lyon.fr
 134.214.100.25
 
德国
 bitftp@vm.gmd.de
 192.88.97.13
 
爱尔兰
 ftpmail@ieunet.ie
 192.111.39 .1
 
美国:加利福尼亚
 ftpmail@decwrl.dec.com
 16.1.0.1
 
美国:新泽西
 bitftp@pucc.princeton.edu
 128.112.129.99
 


3.9  ftp常用子命令列表
       在前面几节中,我们介绍了文件传送程序ftp的使用方法,有了这些知识,用户就可以进行日常的文件传送了。下面,我们将以列表的方式,较为全面地介绍ftp程序的常用子命令。用户可以使用这些命令,更为方便地完成自己的工作。

表3.1  ftp程序常用子命令列表

命    令
 功            能
 
! [Command [Parameters]]
 在本地主机上执行一个本地操作系统命令
 
$Macro [Parameters]
 执行先前用macdef子命令定义的宏
 
? [Subcommand]
 显示指定子命令的帮助信息。没有参数则显示所有ftp子命令列表。同help
 
append LocalFile [RemoteFile]
 将一个本地文件追加到一个远程文件后,如果远程文件名未指定,则用本地文件名代替
 
ascii
 设置传输文件的类型为文本文件,同type ascii
 
bell
 在每一个文件传送完成时响铃一声
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -