OSDN Git Service

Convert release and draft pages to UTF-8.
[linuxjm/jm.git] / manual / ncftp / release / man1 / ncftp.1
1 .\"-------
2 .\" Man page portability notes
3 .\"
4 .\" These are some notes on conventions to maintain for greatest
5 .\" portability of this man page to various other versions of
6 .\" nroff.
7 .\"
8 .\" When you want a \ to appear in the output, use \e in the man page.
9 .\" (NOTE this comes up in the rc grammar, where to print out '\n' the
10 .\" man page must contain '\en'.)
11 .\"
12 .\" Evidently not all versions of nroff allow the omission of the
13 .\" terminal " on a macro argument.  Thus what could be written
14 .\"
15 .\" .Cr "exec >[2] err.out
16 .\"
17 .\" in true nroffs must be written
18 .\"
19 .\" .Cr "exec >[2] err.out"
20 .\"
21 .\" instead.
22 .\"
23 .\" Use symbolic font names (e.g. R, I, B) instead of the standard
24 .\" font positions 1, 2, 3.  Note that for Xf to work the standard
25 .\" font names must be single characters.
26 .\"
27 .\" Note that sentences should end at the end of a line.  nroff and
28 .\" troff will supply the correct intersentence spacing, but only if
29 .\" the sentences end at the end of a line.  Explicit spaces, if given,
30 .\" are apparently honored and the normal intersentence spacing is
31 .\" supressed.
32 .\"
33 .\" DaviD W. Sanderson
34 .\"
35 .\" Japanese Version Copyright (c) 1998 Kanda Mitsuru
36 .\"         all rights reserved.
37 .\" Translated Thu Jul 16 21:16:01 JST 1998
38 .\"         by Kanda Mitsuru <kanda@nn.iij4u.or.jp>
39 .\"-------
40 .\" Dd  distance to space vertically before a "display"
41 .\" These are what n/troff use for interparagraph distance
42 .\"-------
43 .if t .nr Dd .4v
44 .if n .nr Dd 1v
45 .\"-------
46 .\" Sp  space down the interparagraph distance
47 .\"-------
48 .de Sp
49 .sp \\n(Ddu
50 ..
51 .\"-------
52 .\" Ds  begin a display, indented .5 inches from the surrounding text.
53 .\"
54 .\" Note that uses of Ds and De may NOT be nested.
55 .\"-------
56 .de Ds
57 .Sp
58 .in +0.5i
59 .nf
60 ..
61 .\"-------
62 .\" De  end a display (no trailing vertical spacing)
63 .\"-------
64 .de De
65 .fi
66 .in
67 ..
68 .TH NcFTP 1 "2.4.3" NCEMRSoft
69 .SH 名前
70 Ncftp - インターネット ファイル 転送プログラム
71 .SH 書式
72 .B ncftp
73 .RI [ "プログラム オプション" ]
74 .RI [[ "オープン オプション" ]
75 .IR ホスト名 [\c
76 .B :\c
77 .IR パス ]]
78 .\"-------
79 .SH "オプション"
80 .\"-------
81 .PP
82 プログラム オプション:
83   -D   : デバッグモード、トレースモードを有効にする。
84   -L   : ビジュアルモードを使用しない(ラインモード)。
85   -V   : ビジュアルモードを使用する。
86   -H   : バージョン情報。
87 .PP
88 コマンドラインのオープンオプション:
89   -a   : 匿名(anonymous)で接続。
90   -u   : ユーザ名とパスワードプロンプトで接続。
91   -p X : 接続時に ポート番号Xで接続。
92   -r   : 接続するまでリダイアルする。
93   -d X : リダイアルまで、X秒の間隔を開けてリダイアルする。
94   -g X : X回リダイアルして接続できなければ、あきらめる。
95 .PP
96 コマンドラインの取得オプション:
97   -C   : 強制接続(再取得)。
98   -f   : 強制的に上書きする。
99   -G   : ワイルドカードを使用しない。
100   -R   : 再帰。ディレクトリ全体を取得するときに役立つ。
101   -n X : X日前より新しいファイルのみを選択して取得。
102 .\"-------
103 .SH "説明"
104 .\"-------
105 .I NcFTP
106 はインターネット標準の
107 .IR "File Transfer Protocol" 
108 に対するユーザーインターフェイスである。
109 リモートネットワークホストとのファイルの送受信を行い、
110 標準の
111 .IR ftp
112 にはない付加的な機能を提供する。
113 .PP
114 以下の3つモードがある:
115 .IR "ビジュアルモード" "、" "ラインモード" "、" "コロンモード" "である。"
116 .PP
117 使用しているシステムが最近のものなら、デフォルトのモードは
118 .IR "ビジュアルモード" "にすべきである。"
119 これは
120 .I curses
121 ライブラリを用いたフルスクリーン インターフェイスである。
122 ビジュアルモードでは、不可解なコマンドを打つ必要はなく、
123 洒落たスクリーン
124 インターフェイスで NcFTPの設定を編集することができる。
125 .PP
126 ビジュアルモードでなければ、
127 対話的なシェル(interactive shell)である
128 .I "ラインモード"
129 を使うことになるだろう。
130 このモードはデフォルトの
131 .I ftp
132 プログラムのコマンドシェルのような簡易なインターフェイスである。
133 .PP
134 3番目のモードである
135 .I "コロンモード"
136 は、NcFTP自身のシェルに入ること無しに、シェルコマンドラインから
137 直接ファイルをすばやく取得する機能を提供する。
138 このモードはシェルスクリプトで便利である。
139 .\"-------
140 .SH "ビジュアルモードの概論"
141 .\"-------
142 .PP
143 ビジュアルモードになると、スクリーンはクリアされ、派手なスクリーンで書き換
144 えられる。
145 スクリーンの下から2番目に黒色のステータスバーが現れる。
146 ステイタスバーの下は入力行で、プログラムのシェルへコマンドを打ち
147 込む場所である。
148 .PP
149 NcFTPは何か命令されるまで待機している。
150 たいていはリモートのファイルシステムをオープンして、
151 ローカルマシーンのファイルシステムと
152 ファイルのやり取りをすることになるだろう。
153 そのためにはリモートシステムの名前か、もしくはその
154 .I "インターネットプロトコル"
155 (IP)のアドレスを知っている必要がある。
156 例えば、名前が ``typhoon\.unl\.edu'' で
157 そのIPアドレスが ``129.93.33.24''ならば、
158 そのシステムに接続するためには、NcFTPの
159 .I open
160 コマンド:
161 .Ds
162 open typhoon.unl.edu
163 open 129.93.33.24
164
165 .De
166 を使用する。
167 .PP
168 これらは、
169 .IR "Nebraska 大学"
170 の typhoonと呼ばれるマシンに接続しようとする。
171 IPアドレス予告無く変更されることがあるが、名前はたいてい同じままであるので、
172 名前を使用した方が好ましいだろう。
173 .PP
174 リモートファイルシステムに接続するときは、接続するための
175 権限を持っていなければならない。
176 .IR "FTP Protocol" 
177 の認証システムは、(UNIX等の)アカウントにログインすることにとてもよく似ている。
178 しかし、あなたが興味を持つようなリモートシステムの多くでは使用にあたって
179 アカウント名を求められることはないだろう。
180 多くの場合はリモートファイルシステムへ匿名アクセスすれば、
181 公共的にアクセスできるファイルを交換できる。
182 NcFTPはデフォルトでは、リモートシステムに匿名アクセスを行う。
183 これは実際には、``anonymous''というアカウント名を用い、
184 パスワードのプロンプトに管理者への礼儀として
185 E-mailアドレスを記入する。
186 もちろん特定のアカウントを使用することもできる。
187 これについては後述する。
188 .PP
189 接続が成功すると、ステータスバーの片側にリモートシステムの名が表示される。
190 現在のリモートディレクトリの内容を見るには、
191 .IR "ls" "と " "dir"
192 コマンドを使用すれば良い。前者は少ないスクリーンスペースで多く
193 のリモートファイルを選べるように簡潔である。また後者はディレクトリの各項
194 目について詳しい情報を与えるように、冗長である。
195 .PP
196 .IR cd
197 コマンドを使えば、リモートシステムの他のディレクトリへ移動できる。
198 cd コマンドは
199 .IR "Bourneシェル" "と " "Kornシェル"
200 の同名のコマンドと、ほぼ似た動作をする。
201 .PP
202 NcFTPの目的は他のシステムとデータの交換をすることである。
203 .IR get
204 コマンドはリモートシステムからローカルシステムへファイルをコピー
205 する:
206 .Ds
207 get README.txt
208 .De
209 .PP
210 NcFTPはスクリーンに転送の進行状況を表示するので、
211 転送が終了するまでにどれくらいかかるかわかる。
212 転送が終了すると、NcFTPのコマンドシェルにコマンドを打つことがで
213 きるようになる。
214 .PP
215 .IR put
216 コマンドはローカルのシステムからリモートシステムへファイルをコピーするた
217 めに使用できる:
218 .Ds
219 put something.tar
220 .De
221 .PP
222 リモートシステムでの作業が終わったら、他のシステムをオープ
223 ンすることができる。また
224 .IR quit
225 コマンドは NcFTPを終了させる。
226 .\"-------
227 .SH "ブックマーク ファイル"
228 .\"-------
229 .PP
230 NcFTPの目標の一つは最小限のタイピングで最大限の便宜を得ること
231 である。
232 NcFTPは
233 ホームディレクトリの
234 .RI "." "ncftp"
235 サブディレクトリにある
236 .I bookmarks
237 という特別なファイルに、呼び出したサイトについての情報を
238 自動的に保存する。
239 各ブックマークには、ホスト名、
240 入ったリモートディレクトリ、アカウント情報などの設定が保存される。
241 これにより、後で再びそのサイトを呼び出すのを簡単になる。
242 また前回ログオフしたときの全て情報を保存されている。
243 .PP
244 この情報を保持すると、サイトの正式なホスト名を使う代りに、
245 より短く意味のある名前で呼び出すことができるようになる。
246 例えばサイト名 ``typhoon\.unl\.edu'' を頻繁に呼び出す
247 と、ブックマーク名は ``typhoon'' になるだろう。すると、
248 .Ds
249 open typnoon.unl.edu
250 .De
251
252 の代りに
253 .Ds
254 open typhoon
255 .De
256
257 とすることができる。
258 .PP
259 問い合わせたサイトを NcFTPが特定できる限りにおいて、ブックマークの
260 名前を短縮することができる。
261 ブックマークの名前に``ty''から始まるものが他になければ、以下のようにできる:
262 .Ds
263 open ty
264 .De
265 .PP
266 ブックマークの機能を用いれば、実際の名前が覚えにくいような
267 ホストに対して、より記憶しやすい名前を割り当てることができる。
268 .I "Nethack"
269 というポピュラーなゲームが linc\.cis\.upenn\.edu の /pub/NH3\.1 ディレ
270 クトリに置かれているが、
271 このサイトのブックマークとして ``nethack'' を指定できる。
272 すると、
273 .Ds
274 open linc.cis.upenn.edu
275 .De
276 .PP
277 の代りに
278 .Ds
279 open nethack
280 .De
281 .PP
282 とすることもできる。
283 .PP
284 .\"-------
285 .SH "ブックマーク エディタの使用"
286 .\"-------
287 .PP
288 ブックマークファイルに蓄えられているブックマークを操作するため
289 には、NcFTPに付属するブックマーク エディタを使用する。
290 NcFTPの中から
291 .I bookmarks
292 と打てば、ブックマークエディタが起動し、
293 新しい画面が立ち上がる。
294 .PP
295 右側に NcFTPが保存してあるリモートシステムのリストが
296 置かれる。
297 リモートシステムに接続するごとに、NcFTPは自動的に
298 ブックマークファイルのエントリを保存する。
299 もしサイトの接続にまだ成功していない場合には、このリストは空に
300 なる。
301 .PP
302 左側にリストに対して行うことのできる命令が表示されている。
303 ブックマークエディタは、コマンド(編集したい設定のブックマークを
304 選択するなど) 待ち状態になる。
305 .PP
306 ブックマークエディタには ``ホットキー'' という、単一のキーのみで動作する
307 コマンドがある。
308 ホットキーコマンドの後には enter を打つ必要はない。
309 例えばブックマークエディタを終了するためには、``x'' キーを打てばよい。
310 マルチキーコマンドは最初に / を打ち、最後に enter キーを打つ必要
311 がある。
312 例えば選択したサイトを消去するには、``/'' キーを打った後に ``del''
313 ``enter'' と打てばよい。
314 リストの(反転している)選択行を下げるには ``d'' キーを打ち、上げる
315 には ``u'' キーを打つ。
316 ブックマークリストに多くのエントリがある場合には、全てを一画面で見せる
317 ことはできなくなるだろうが、ブックマークリストを適当にスクロールさせて
318 他のサイトも見ることができる。
319 ページを移動するには、``p'' ``n'' キーを使用する。
320 .PP
321 ブックマークリストでサイトを選択するには、大文字を使う
322 方法もある。ブックマークリストに多くのエントリがあるときに、ブック
323 マーク名 ``nethack'' のサイトを選択するには ``N'' と打つ。すると ``n'' か
324 ら始まるブックマークのサイトの先頭にリストの選択行が移動する。
325 .PP
326 編集したいブックマークを反転させた後、
327 .RI "/" "ed"
328 を使えば、
329 そのブックマークの設定を示した画面が立ちあがる。
330 .PP
331 .I "Bookmark Options"
332 のスクリーンでは、編集したい設定はホットキーで指定する。
333 例えばブックマークの名前を編集するためには、``a'' と打つ。
334 このブックマークの編集を終えて、ブックマークエディタ画面に戻るには
335 ``x'' キーを打てばよい。
336 .\"-------
337 .SH "ブックマークオプション"
338 .\"-------
339 .PP
340 サイトをオープンする時に使用する名前を変更するには
341 .I Bookmark name
342 フィールドの編集をする。ブックマーク名を変更した後には、このブッ
343 クマークの参照はこの名前で行わなければならなくなる。例えば
344 ``foobar'' という名前に変更したら、``open foobar''を用いなければならない。
345 これは、一つのリモートホストに対して、
346 複数のエントリを持つことができるようにするためである。
347 例えば wuarchive\.wustl\.edu に対して2つのブック
348 マーク ``wumac''と ``wuwindows''を作った場合に、
349 ``open wuarchive\.wuustl\.edu''としたのでは、NcFTPはどち
350 らのエントリを使用したら良いのかわからないからである。
351 .PP
352 サイトのログイン情報は
353 .IR "User" ", " "Password" ", " "Account"
354 フィールドによって変更する。
355 匿名(anonymous)ログインを用いる場合は、通常そのままにしておく。
356 リモートシステムによっては特定のアカウントを用いたいことがあるかもし
357 れない、
358 このような場合には匿名(anonymous)ログイン以外の方法を用いる。
359 .PP
360 .I Directory
361 フィールドには、リモートホストへの接続が成功したときに移
362 動するディレクトリを指定する。
363 サイトへの接続を終了した時に、このフィールドは自動的に終了時のディレ
364 クトリに更新される。
365 .PP
366 .I "Transfer Type"
367 フィールドは、ファイルを転送に標準以外の転送モードを使用する場合に
368 変更する。 
369 NcFTPはたいてい
370 .I UNIX
371 システム上で使用されるし、リモートシステムの多くも
372 .I UNIX
373 系でなので、デフォルトの転送モードは
374 何も変換されない
375 .IR "binary" ","
376 となっている。
377 .PP
378 しかし、プレーンテキストを種類の異なる
379 .RI "非" "UNIX"
380 システム間で転送する必要があるときは、
381 .IR "ASCII" 
382 モードに変更すると良い。
383 これはテキストのみのファイルを正しく転送することを保証する。
384 多くの場合は、
385 .I "binary"
386 転送モードを使用する必要があるだろう。
387 .PP
388 .I Port
389 フィールドは標準的でないポート番号を使用するときに変更する。
390 私はこれまで異なるポート番号を必要としたことがないが、必要な場合は変える
391 ことができる。
392 .PP
393 .I "Has SIZE Command"
394 フィールドはおそらく編集する必要はないだろう。
395 このフィールドは通常、情報の提供にだけ用いられる。
396 .I SIZE
397 コマンドは、
398 .I "FTP Protocol"
399 のコマンドで、
400 リモートサーバでサポートされていると NcFTPにとって都合が良い。
401 このコマンドがサポートされていれば、(クライアント側の)
402 プログラムは転送前にリモートファイルの正確なバイト数を
403 知ることができ、転送処理の進捗状況がわかるようになる。
404 .PP
405 .I "Has MDTM Command"
406 フィールドも編集する必要はないだろう。
407 リモートサーバがこれをサポートしていれば、NcFTPはリモー
408 トファイルの更新日時を正確に知ることができ、同じ日付をローカルファイルに設定
409 する。
410 .PP
411 .I "Can Use Passive FTP"
412 フィールドは、リモートのサーバが
413 .IR "FTP Protocol "の" "PASV"
414 コマンドを使用できるかどうかを指定する。
415 FTPコネクションを設定する方法は2通りある。
416 デフォルトの方法は
417 .IR "Port FTP"
418 と呼ばれるものである。
419 残念なことに、
420 .I "Port FTP"
421 は、ローカルホストが
422 .IR "ファイヤーウォール"
423 の内側にある場合は使用できない。一方
424 .I "Passive FTP"
425 はファイヤーウォールの内側からでも使用できるので、
426 可能な場合はこちらを用いると良いだろう。
427 これは多くの場合自動的に検出されるので、このフィールドを編集する必
428 要はないでだろう。
429 .PP
430 .I "Operating System"
431 フィールドは特定のオペレーティングシステムに依存する情報を伝え
432 るために使用される。
433 もしOSがUNIX系ならば、NcFTPはリモートサーバのレスポンスについてあ
434 る仮定をできる。
435 例えば、OSが
436 .I "UNIX" 
437 なら、
438 .I "ls"
439 コマンドは
440 .I "UNIX"
441 上での `` /bin/ls\ \-CF''のように動作しようとする。
442 OSが
443 .I UNIX
444 でなけれは、
445 ``\-CF'' はリモートサーバで使えないかも知れないし、
446 サーバが文句をいうかもしれない。
447 これらは多くの場合自動的に検出できるので、おそらくこのフィー
448 ルドを編集する必要はないだろう。
449 .PP
450 コメントフィールドはサイトについての短い説明を記録するのに使用できる。
451 例えば、私の ``nethack'' エントリでは、このフィールドに
452 「Nethackの最新バージョンをおいてあるサイト」
453 という情報を書いてある。
454 ブックマークエディタウインドウにいるとき、コメントを持つサイトを
455 反転させると、スクリーンの一番下にこのコメントが表示される。
456 したがって、コメントを見るためにエディットモードに入る必要はない。
457 .\"-------
458 .SH "好みの設定"
459 .\"-------
460 .PP
461 リモートホストごとに指定するオプションに加えて、NcFTPはユーザが設定可能な
462 グローバルオプションを持っている。
463 NcFTPの設定を変えるためには、NcFTP起動中に
464 .I prefs
465 コマンドを実行する。
466 .PP
467 .I Default open mode
468 フィールドはNcFTPがどのように接続を試みるかを指定する。
469 もし匿名(anonymous)FTPを多く利用するならば、
470 .IR anonymous 
471 に設定する。
472 FTPするホストの多くが匿名(anonymous)ログインを許可していない
473 なら、
474 .I usr と password
475 フィールドを設定するとよいだろう。
476 例えば、あなたの会社のネットワーク上で異なるマシンからのコピーをす
477 るのに NcFTPを使うなら、
478 .I anonymous
479 FTPモードを使いたくはないだろう。
480 .PP
481 .I Anonymous password
482 フィールドは匿名(anonymous)ログインする時にリモートのホストへ
483 与える値を変える場合に用いる。
484 匿名(anonymous)FTPのためにパスワードとして利用者の e-mailアドレ
485 スが習慣的に用いられる(たいていは要求される)。これにより
486 リモートホストの管理者は、だれがサービスを利用しているかを知ることができる。
487 もしNcFTPがあなたのe-mailアドレスを正しく得ることができなかったり、
488 あなたが異なったものを使いたいのならば、このフィールドを変えること。
489 .PP
490 NcFTPは目の疲れを減らすために以前よりも空白を多く使用してい
491 る。これが嫌なら、
492 .I Blank lines between cmds 
493 フィールドを変更すればこの機能を無効にできる。
494 .PP
495 NcFTPは転送したファイルのログをとることができるので、
496 何を取得したのか忘れてしまった場合にはログを参照すること
497 ができる。
498 ログが
499 .I "~/.ncftp/log"
500 に保存されるようにするには
501 .I User log size
502 フィールドに0よりも大きい数をセットする。
503 おそらくこのファイルを無限に大きくはしたくないだろうから、ファイルの
504 最大のサイズをセットしておくとよい。
505 .PP
506 NcFTPは以前にオープンした各サイトを全てブックマークファイルに保存するが、
507 保存するサイトの数の上限を設定したくなるかもしれない。
508 NcFTPをロードしたりブックマークを保存するのが遅いマ
509 シンを使っているとか、ディスクスペースが貴重な場合には、
510 .I Max bookmarks to save
511 フィールドを設定してブックマークの保存数を制限することができる。
512 制限に達したら、NcFTPは最後の接続が最も古いサイトの情報を捨てる。
513 言い換えれば、だいぶ前に一度だけ訪れ、忘れさられているサイトが
514 最初に捨てられる。
515 .PP
516 NcFTPの機能によっては
517 大容量のテキストが表示されるので、
518 .I pager
519 プログラムを使う必要がある。
520 例えば
521 .I page
522 コマンドはリモートファイルを取得し、その閲覧のためにページャを使用する。
523 .I pager
524 フィールド(もしくはコマンドラインフラグ)によって、
525 NcFTPで使用するページャを指定できる。
526 .PP
527 リモートホストとローカルホストの間でファイルを転送するとき、NcFTP
528
529 転送の状態を示す
530 .I progress meter
531 を表示する。
532 何種類かあるので、
533 .I Progress meter
534 フィールドを変えれば、他のものを試すことができる。
535 .PP
536 .I Remote messages
537 フィールドを変えると、リモートサーバのおしゃべりをどれくらい表示す
538 るかを制御できる。
539 NcFTPは全てのエラーメッセージを表示するが、リモートサーバのメッセージの
540 多くはあまり役に立たない。
541 表示するに値するメッセージは2つくらいである。
542 一つめは
543 .IR "startup message" 
544 である。
545 典型的には、サーバーに接続したときサーバについて幾つかの重要な情報
546 を表示する。
547 サーバによっては
548 特定のディレクトリに入ったときに
549 .IR "chdir messages" 
550 を表示する。
551 .I Remote messages
552 フィールドをトグルすることによりこれらのメッセージを表示するか指定でき
553 る。
554 .PP
555 デフォルトでは、NcFTPを実行している間、ローカルマシンのディレクトリは
556 NcFTPを実行した時点のディレクトリになる。
557 よってダウンロードはそのディレクトリに行われる。
558 私は自分がダウンロードするものは指定したディレクトリ ``download
559 directory'' を使用するのが好みである。
560 これは quotaの容量を超えたり、他のファイルを上書きすることを妨げる
561 からである。
562 NcFTPの起動時にローカルディレクトリを変更するには
563 .I Startup in Local Dir
564 フィールドを設定すればよい。
565 これにより、ダウンロードしたファイルのありかがわかるようになる。
566 .PP
567 NcFTPの自身にも、表示したくなくなるような退屈なメッセージが
568 いくつか存在している。
569 プログラムが ``splash screen'' やプログラムの
570 .I tip
571 (ちょっと気のきいた利用法) 情報を表示するかは、
572 .I Startup messages
573 で変えることができる。
574 .PP
575 リモートファイルを取得するとき、デフォルトではNcFTPはリモー
576 トファイルと同じ更新時刻をローカルファイルにも設定しようとする。
577 .I File timestamps
578 フィールドを変更することによりこれを無効にすることができる。
579 .PP
580 フルスクリーンの使用を好まないのなら、
581 .I Screen graphics
582 フィールドを変更することにより行指向のモードを使用することができる。
583 一度
584 .I プレファレンス
585 スクリーンから
586 .I ビジュアル
587 モードをオフにすると、
588 .I ライン
589 モードを使用しているときに再度 プレファレンススクリーンに戻ることはで
590 きない。
591 ビジュアルモードに戻るためには、 ``\-V'' フラグをつけてNcFTPを起
592 動する。例えば以下のようにする。
593 .Ds
594 ncftp -V
595 .De
596 .\"-------
597 .SH "コマンドリファレンス"
598 .\"-------
599 NcFTPのコマンドシェルがサポートしているコマンドについて説明する。
600 まず最初に知っておくべきコマンドは
601 .IR help
602 である。
603 .Ds
604 help
605 .De
606 .PP
607 とコマンドシェルから打てば
608 .PP
609 NcFTPはサポートしているコマンドの名前をすべて表示する。
610 さらに helpの後に指定したコマンドを指定すれば、
611 そのコマンドのヘルプが
612 得られる。例えば:
613 .I open
614 コマンドについての情報を表示するためには
615 .Ds
616 help open
617 .De
618 .PP
619 とする。
620 .PP
621 シェルエスケープコマンドは簡単で、エクスクラメーションマーク
622 .I !
623 である。
624 サブシェルを起動するには、単に
625 .Ds
626 !
627 .De
628 .PP
629 と打てばよい。
630 .PP
631 1つのコマンドだけを実行させることもできる。以下のようにする:
632 .Ds
633 !date +%H:%M:%S
634 .De
635 .PP
636 .PP
637 .I cd
638 コマンドはリモートホスト上でのワーキングディレクトリを変更する。
639 リモートサーバの異なるエリアへ移動するためにはこのコマンドを使う。
640 新しいサイトをオープンしたばかりの時には、ルートディレクトリにいるであろ
641 う。このサイトに、例えば ``/pub/news/comp\.sources\.d''という
642 ディレクトリがある、という情報を聞いたとしよう。ここに移動するには、
643 ルートディレクトリから:
644 .Ds
645 cd pub
646 cd news
647 cd comp.sources.d
648 .De
649 .PP
650 もしくはより簡潔に
651 .Ds
652 cd /pub/news/comp.sources.d
653 .De
654 .PP
655 とすればよい。
656 移動がすんだら、
657 .IR "get" ", " "put" ", " "ls"
658 のようなコマンドを使用すれば、そのディレクトリにあるアイテムを参照できる。
659 .I UNIX
660 環境の幾つかのシェルでは直前にいたディレクトリにスイッチするような
661 機能を持っている (私の好む機能である)。
662 それらのシェルのように
663 .Ds
664 cd -
665 .De
666 .PP
667 とすれば、直前にいたディレクトリに移動できる。
668 .PP
669 .PP
670 .I close
671 コマンドはリモートサーバとの接続を切断する。
672 NcFTPは必要なときに自動的にこれを実行するので、
673 他のサイトをオープンしたり、プログラムを終了したりするときに、
674 わざわざ手動で切断する必要はない。
675 .PP
676 .I create 
677 コマンドは、たまに使用する必要があるかもしれない。
678 これはリモートホスト上に空のファイルを作成する。
679 リモートサーバの管理者に接触できないが、
680 関係者の誰かが、あなたのファイルを目にしてくれるかもしれない
681 場合に役に立つかもしれない。
682 例えば
683 .Ds
684 create readline2.0.tar_is_corrupt
685 .De
686 .PP
687 とすることによって、
688 そのファイルを再投稿することをだれかに促すことができるかもしれない。
689 .PP
690 .I debug
691 コマンドは、基本的には作者自身とテスターのためのものである。
692 デバッグモードをオンにするためには、
693 .Ds
694 debug 1
695 .De
696 .PP
697 とする。
698 こうすると、NcFTPとリモートサーバとの間のすべてのメッセージを
699 見ることができる。この中にはデバッグモードのみで
700 表示されるいくつかのメッセージが存在する。
701 バグ報告をする場合には、
702 .I trace
703 ファイルを送ってほしい。
704 このファイルを作成するには、NcFTPを走らせてから
705 .Ds
706 debug trace 1
707 .De
708 .PP
709 とする。
710 .PP
711 このときには、プログラムがどのようにコンパイルされたかがわかるように、
712 まず
713 .Ds
714 version
715 .De
716 と打って欲しい。
717 .PP
718 NcFTPを終了した後、
719 .I "~/\.ncftp/trace"
720 ファイルの中身を emailに添付して私宛に送ってもらえれば、
721 私はその内容からバージョン情報も知ることができる。
722 .PP
723 .I dir
724 コマンドは詳細なディレクトリのリストを表示する。
725 これは
726 .IR UNIX "の"
727 ``/bin/ls -l'' コマンドのような振る舞いをする。
728 リモートサーバが
729 .I UNIX
730 ホストなら、
731 .I "ls " 
732 と同じフラグも使うことができる、例えば
733 .Ds
734 dir -rt
735 .De
736 .PP
737
738 .IR UNIX
739 上の
740 .Ds
741 /bin/ls -lrt
742 .De
743 .PP
744 と同じように動作する。
745 .PP
746 .PP
747 .I echo
748 コマンドはあまり便利には思えないかもしれないが、NcFTPのマクロで
749 使用すると有益なことがある。これは
750 .I UNIX
751 シェルの echo コマンドのように動作するが、いくつかの拡張
752 フラグを使用できる。
753 ``%'' フラグはすべて
754 ``%'' フラグはすべて
755 .IR strftime "(4)" 
756 を通して表示される。
757 したがって
758 .Ds
759 echo It is now %H:%M on %B %d.
760 .De
761 .PP
762 と打てば、スクリーン上に以下のような表示を得ることができる。
763 .Ds
764 It is now 19:00 on January 22.
765 .De
766 .PP
767 ``@'' フラグも存在し、NcFTPは以下のように展開する:
768 .Ds
769 @H : 接続されたホストの名前。
770 @D : リモートホストの現在の作業ディレクトリのフルパス。
771 @J : リモートの現在の作業ディレクトリの短いパス名。
772 @N : 改行。
773 @n : 接続されたホストのブックマーク名。
774 .De
775 .PP
776 例えば
777 .Ds
778 echo "Connected to @H at %H:%M." >> junk
779 .De
780 .PP
781 と打った後で ``junk'' の内容を見れば、以下のようになっている:
782 .Ds
783 Connected to sphygmomanometer.unl.edu at 20:37.
784 .De
785 .PP
786 .I get
787 コマンドはファイルをリモートホスト上の現在の作業ディレクトリから
788 あなたのマシンの現在の作業ディレクトリにコピーする。
789 あなたのローカルディレクトリに ``README'' のコピーを置くためには、
790 以下のようにすればよい:
791 .Ds 
792 get README
793 .De
794 .PP
795 .I get
796 コマンドは以下の ``ダウンロードの特殊機能'' で説明するようないくつかの
797 強力な特徴を持っている。
798 .PP
799 .PP
800 .I bookmarks
801 コマンドは
802 .IR "ブックマーク エディタ" 
803 を実行する。
804 これまでの内容を読んでいれば、これが何をするものかを知っているはずである。
805 .I lcd
806 コマンドはローカルホストに作用する ``l'' コマンドの最初のものである。
807 もし異なるローカルディレクトリにファイルをダウンロードしたければ、
808 ディレクトリを変えるために
809 .I lcd
810 を使ってディレクトリを変更してからダウンロードすればよい。
811 .PP
812 その他の手頃なローカルコマンドとしては、
813 .I lls
814 コマンドがある。これはローカルホスト上の ``/bin/ls''を実行し
815 NcFTPのウインドウに結果を表示する。
816 コマンドシェルの
817 .I ls
818 と同じフラグを
819 .I lls
820 にも用いることができる。例えば:
821 .Ds
822 lcd ~/doc
823 lls -lrt p*.txt
824 .De
825 .PP
826 NcFTPには、ネームサービスへのインターフェースも組み込まれている。
827 これには
828 .I lookup
829 コマンドを用いる。
830 つまり以下のようにすれば、リモートホストのエントリを検索できるのである:
831 .Ds
832 lookup cse.unl.edu ftp.cs.unl.edu sphygmomanometer.unl.edu
833 .De
834 .PP
835 以下のように表示される:
836 .Ds
837 cse.unl.edu 129.93.33.1
838 typhoon.unl.edu 129.93.33.24
839 sphygmomanometer.unl.edu 129.93.33.126
840 .De
841 .PP
842 より詳細に表示することもできる。``\-v''を用いればよい。例えば:
843 .Ds
844 lookup -v cse.unl.edu ftp.cs.unl.edu
845 .De
846 .PP
847 以下のように表示される:
848 .Ds
849 cse.unl.edu
850     Name:     cse.unl.edu
851     Address:  129.93.33.1
852
853 ftp.cs.unl.edu:
854     Name:     typhoon.unl.edu
855     Alias:    ftp.cs.unl.edu
856     Address:  129.93.33.24
857 .De
858 .PP
859 .I IP
860 アドレスを与えることもできる。つまり次のような指定も可能である:
861 .Ds
862 lookup 129.93.33.24
863 .De
864 .PP
865 以下のように表示される:
866 .Ds 
867 typhoon.unl.edu 129.93.33.24
868 .De
869 .PP
870 .I lpage
871 コマンドを用いると、ローカルファイルを一度に一つだけ見ることができる。
872 デフォルトでは、NcFTPはファイルを表示に設定されているページャプロ
873 グラムを使用する。
874 ``\-b''フラグを指定すれば、組み込みのページャを使うこともできる。
875 例えば:
876 .Ds
877 lpage -b ~/.ncftp/bookmarks
878 .De
879 .PP
880 .PP
881 .I lpwd
882 コマンドは現在のローカルディレクトリを表示する。
883 ローカルマシン上でどこのディレクトリにいるのかを忘れたときに
884 このコマンドを使うと良い。
885 .I ls
886 コマンドはディレクトリのリストを簡潔に表示する。
887 .IR UNIX "の"
888 ``/bin/ls -CF '' コマンドのように振る舞おうとする。
889 もしリモートのサーバーが
890 .I UNIX
891 ホストなら、
892 .I "ls" 
893 と同じフラグを使うことができる。
894 例えば:
895 .Ds
896 ls -rt
897 .De
898 .PP
899
900 .IR UNIX
901 上での
902 .Ds 
903 /bin/ls -CFrt
904 .De
905 .PP
906 のように振る舞おうとする。
907 .PP
908 .I mkdir
909 コマンドはリモートホスト上で新しいディレクトリを作ろうとする。
910 多くの公的なサイトでは、利用者はそのような権限を持っていないであろう。
911 .PP
912 サーバによっては、特殊な転送モードを使用しなければならないこともある。
913 多くのサーバではデフォルトのモードである
914 .I stream
915 モードのみをサポートしている。NcFTPはstreamモードと同様に
916 .I block
917 モードもサポートする。このモードを用いる最大の利点は、
918 全ての転送に同じデータコネクションを用いることである。
919 .I stream
920 モードで、NcFTPとサーバは各ファイル毎に新しいコネクション
921 を確立しなければならない。これは余計な時間と帯域を消費する。
922 blockモードにするには
923 .I mode
924 コマンドを使用する。
925 .Ds
926 mode b
927 .De
928 .PP
929 とタイプすればよい。
930 ストリームモードを使用するためのコマンドは
931 .Ds
932 mode s
933 .De
934 .PP
935 である。
936 リモートサーバがblockモードをサポートしており、
937 その実装が正しいことが分かったなら、NcFTPは
938 自動的にblockモードに切り替わるので、このコマンドは使うべきでない。
939 .PP
940 .I open
941 コマンドはリモートホストに接続する。
942 フラグを使わずに単にホストに接続することが多いだろうが、
943 実は
944 .I open
945 コマンドには、各種の機能を有効にするためのフラグが幾つか存在する。
946 .PP
947 強制的に匿名(anonymous)でオープンするには、``\-a''フラグを使用する。
948 .IR NcFTP
949 の公式アーカイブサイトである
950 .I ftp\.ncftp\.com
951 マシン上で、私は匿名ログインとユーザログインの両方を使用する必要がある。
952 .I ブックマーク エディタ
953 は前回使用したログインのタイプを記憶してしまうので、
954 もし前回ユーザログインであったならば、
955 ``\-a''フラグを使用すれば
956 .I ブックマーク エディタ
957 を変更せずに匿名ログインに戻ることができるわけである。
958 .PP
959 同様に、強制的にユーザログインにするには ``\-u''フラグを使用する。
960 そのときは、アクセスするための自分のアカウント名とパスワードを入力する。
961 .PP
962 .I wuarchive\.wustl\.edu
963 のような、巨大なアーカイブサイトの多くは混雑しているので、
964 それらに対する接続が保証されない。
965 NcFTPは、接続が成功するまで定期的にサイトに ``リダイアル''
966 するようにできる。
967 自動的にリダイアルするには ``\-r''フラグを使用する。
968 .PP
969 リダイアルには固有のパラメータが幾つか存在する。
970 リダイアルする間の遅延時間を秒単位で設定できる。
971 また、NcFTPがリダイアルをあきらめる最大回数を設定できる。
972 以下に、リダイアルモードの全機能を用いている例を示す:
973 .Ds
974 .De
975 open -r -d 75 -g 10 bowser.nintendo.co.jp
976 .PP
977 ``\-r''でリダイアルモードにし、``\-d''はリダイアル間隔を75秒にして、
978 ``\-g''フラグはリダイアルの回数を10回に限定している。
979 デフォルトのリダイアル設定にまかせてかまわなければ、
980 ``\-r''のみを指定しても良い。
981 .PP
982 .I open
983 コマンドは
984 オープンするホスト名を与えなければ、
985 .I ブックマーク エディタ
986 を起動する。
987 ホストを選択するために
988 .I ブックマーク エディタ
989 からもホストを選択することができる。ホスト名を反転させて
990 .I リターン(return)
991 キーを打てばよい。
992 .PP
993 .I
994 page
995 コマンドはリモートファイルを一度に一つだけ表示する。
996 これは、リモートホスト上の README などのファイルを
997 ダウンロードせずに読むことができるので便利である。
998 このコマンドは
999 ファイルを見るために
1000 .I Preferrences
1001 スクリーンの中の
1002 .I pager
1003 フィールドに設定したものを使用する。
1004 .PP
1005 .IR "pdir" " と " "pls"
1006 コマンドはそれぞれ
1007 .IR "dir" " と " "ls"
1008 に等しい。ただし出力はページャへ送られる。
1009 これらのコマンドは
1010 .I line モード
1011 での使用を念頭においている。ディレクトリのリストがオフスクリーンに
1012 スクロールしてしまうかも知れないからである。
1013 もし、
1014 .I ビジュアル
1015 モードでは、普通に
1016 .I ls
1017 すれば、オフスクリーンになる場合には組み込みのページャが自動的に起動する。
1018 それゆえ、
1019 .I ビジュアル
1020 モードで
1021 .IR "pdir" " と " "pls"
1022 を使用することは奨めない。
1023 .PP
1024 .IR "redir" " と " "predir"
1025 コマンドは最後に取ったディレクトリのリストを再表示するものである。
1026 NcFTPは最後に行った
1027 .IR "dir" " もしくは " "ls"
1028 コマンドからの出力を保存するので、それを再び見たいときに、ネットワーク
1029 の帯域を浪費せずにすむ。
1030 .I predir
1031 コマンドは出力をページャに渡すことを除いて
1032 .IR "redir" 
1033 と同じである。
1034 .PP
1035 .I predir
1036 コマンドは出力をページャに渡すことを除いて
1037 .IR "redir" 
1038 と同じである。
1039 .PP
1040 私の使い方では、
1041 接続の多くはダウンロードのためで、
1042 アップロードはほとんど必要としなかった。
1043 しかし
1044 .I put
1045 コマンドもちゃんと存在していて、リモートホストへファイルを
1046 アップロードすることができる。
1047 例えば、いくつかのファイルをリモートホストに送りたいならば、
1048 以下のようにすればよい:
1049 .Ds
1050 lcd ~/docs/files
1051 put 02.txt 03.txt 05.txt 07.txt 11.txt
1052 .De
1053 .PP 
1054 .I put
1055 コマンドはあなたがリモートホスト上に正当な許可属性を持っていない場合には
1056 動作しない。また、このコマンドは
1057 ``\-z''オプションを除いて
1058 .I get
1059 コマンドが持っているような特別な機能を持っていない。
1060 .PP
1061 .I pwd
1062 コマンドは現在のリモートディレクトリを表示する。
1063 .I ビジュアル
1064 モードでは、これはステータスバーに表示される。
1065 .PP
1066 リモートファイルの名前は変更したいときには、
1067 以下のように
1068 .I rename
1069 コマンドを使用すればよい:
1070 .Ds
1071 rename SPHYGMTR.TAR sphygmomanometer-2.3.1.tar
1072 .De
1073 .PP
1074 NcFTPの使用を終了するには、もちろん
1075 .I quit
1076 と打てば良い。
1077 (
1078 .IR "bye" "、 " "exit" ", " "^D"
1079 などのコマンドも利用できる。)
1080 .PP
1081 .I quote
1082 コマンドを使えば
1083 リモートサーバへ直接
1084 .I FTP プロトコル
1085 を送ることができる。
1086 通常、これは一般的なユーザにとっては使いやすいものではない。
1087 .PP
1088 .I rhelp
1089 コマンドは、リモートサーバにヘルプリクエストを送信する。
1090 .I FTP プロトコル
1091 のコマンドリストが表示されることが多い。たまには、実際に有用な
1092 (サイト管理者への連絡方法など)
1093 が表示されることもある。
1094 .PP
1095 リモートサーバによっては、サーバへ以下のような
1096 パラメータを与えることも可能かもしれない:
1097 .Ds
1098 rhelp NLST
1099 .De
1100 .PP
1101 そのようなサーバは以下のように返答する:
1102 .Ds
1103 Syntax: NLST [ <sp> path-name ]
1104 .De
1105 .PP
1106 リモートファイルを削除したい場合には、
1107 .I rm
1108 コマンドを試してみるとよい。
1109 多くの場合、あなたは正しい許可属性を持っていないだろうから
1110 でうまく行かないであろう。
1111 このコマンドはいかなるフラグも受け入れない。よって
1112 .IR UNIX 
1113 でのように ``\-rf''を用いて、ディレクトリツリー全体を破壊する
1114 ようなことはできない。
1115 .PP
1116 同様に、
1117 .I rmdir
1118 コマンドはディレクトリを削除する。
1119 リモートサーバによっては、空でないディレクトリを消すことができる
1120 かもしれないので気をつけるように。
1121 .PP
1122 .I set
1123 コマンドはNcFTPの古いバージョンとの互換性のために用意されている。
1124 現在では
1125 .I prefs
1126 コマンドによって置き換えられた。
1127 基本的な文法は:
1128 .Ds
1129 set オプション 値
1130 .De
1131 .PP
1132 である。ここでオプションは、
1133 .I Preferences
1134 スクリーンのフィールドに対応したショートネームである。
1135 preferencesフィールドのショートネームは
1136 .I ~/.ncftp/prefs
1137 ファイルを眺めることによって見つけられる。
1138 このコマンドは主に
1139 .IR "line mode"
1140 で使われるが、私はもうこのモードは公式にサポートしないので、
1141 このコマンドは使用しないで頂きたい。
1142 .PP
1143 .IR "site"
1144 コマンドを使わなければならないようなこともあるかもしれない。
1145 .I FTP プロトコル
1146 では ``サイト固有の''コマンドが許可されている。
1147 もちろんこれらの ``site''コマンドはサイトによって異なるが、
1148 いくつかのサイトでサポートされているコマンドに
1149 .IR "chmod" 
1150 がある。
1151 例えば:
1152 .Ds 
1153 site chmod 644 README
1154 .De
1155 .PP
1156 リモートサーバが何をサポートしているかを知るためには、
1157 以下のようにしてみると良い:
1158 .Ds
1159 rhelp SITE
1160 site help
1161 .De
1162 .PP
1163 サーバとのセッションの途中で、転送タイプを変更する必要があるかもしれない。
1164 これには
1165 .I type
1166 コマンドを使用することができる。以下のように試してみると良い:
1167 .Ds
1168 tpe ascii
1169 type binary
1170 type image
1171 .De
1172 .PP
1173 NcFTPについて私に連絡する必要が生じた場合には、
1174 .I version
1175 コマンドに慣れて欲しい。
1176 このコマンドは、あなたが使用しているNcFTPのバージョンと
1177 それがどのようにシステムにインストールされたかを私に伝えるために
1178 多くの情報をダンプする。
1179 このコマンドの出力をファイルに保存する方法を以下に示す。
1180 この結果を私に送ってほしい。
1181 .Ds
1182 version > version.txt
1183 .De
1184 .PP
1185 .\"-------
1186 .SH "ダウンロードの特殊機能"
1187 .\"-------
1188 リモートホスト上のファイルをローカルホストにコピーするには
1189 .I get
1190 コマンドを使用すればよい、と言うことはおそらく既に知っているだろう。
1191 しかし
1192 .I get
1193 コマンドにはいくつか有益なトリックがある。
1194 まず、
1195 .I NcFTP
1196 は既に持っているファイルをスキップできる。
1197 .Ds
1198 get file24
1199 .De
1200 .PP
1201 が指定されたときに
1202 .PP
1203 現在のローカルディレクトリに``file24''というファイルが存在する場合には、
1204 NcFTPはそれを再びダウンロードしてネットワークの帯域を
1205 消費してもよいかを決定するために、いくつかの追加的な情報を取得しようとする。
1206 .PP
1207 NcFTPはリモートファイル``file24''の日付とサイズを取得しようとする。
1208 もしそのファイルがローカルファイル``file24''と同じ日付で同じサイズなら、
1209 NcFTPはそのファイルをスキップする。
1210 NcFTPがリモートファイルの日付もしくはサイズを取得できなかったり、
1211 それらが異なっていたら、NcFTPはファイルを取り寄せる。
1212 .PP
1213 また、ローカルファイルの日付がリモートファイルの日付より新しければ、
1214 NcFTPは既により新しいバージョン持っていると見なしてダウンロードを
1215 スキップする。
1216 .PP
1217 つまり、NcFTPを用いればアーカイブを
1218 .I mirror
1219 することができるわけである。
1220 例えば、``files''と呼ばれるリモートディレクトリのファイル全てを
1221 ミラーしていなければならい仕事があるとする。
1222 そのディレクトリには多数のファイルがあり、その中のいくつかが
1223 時々更新されている。
1224 .I ncftp
1225 を使用して適切なローカルとリモートディレクトリを設定すれば
1226 この作業を簡単に行うことができる。
1227 .Ds
1228 get *
1229 .De
1230 .PP
1231 NcFTPは古いファイルをスキップし、持っていないファイルと
1232 前回から更新されたファイルのみをダウンロードする。
1233 .PP
1234 NcFTPが必要ないと判断した場合でも、
1235 NcFTPのアドバイスを無視してファイルを
1236 ダウンロードしたいかもしれない。
1237 強制的にダウンロードするには
1238 .I get
1239 に ``\-f''フラグを用いれば良い。
1240 .Ds
1241 get -f README
1242 .De
1243 .PP
1244 接続が切れたときにも強制的に継続してダウンロードを続けるためのフラグ
1245 ``\-C''の使用すればよい。
1246 私は歴史的な理由から、これを ``forced reget(強制再取得)''と呼ぶことがある。
1247 .PP
1248 .I get
1249
1250 ``\-G''フラグを使用すれば
1251 .I ワイルドカードマッチング
1252 の機能を無効にできる。
1253 他の
1254 .I FTP
1255 プログラムは
1256 ダウンロードしているファイルのローカルパス名を指定するために
1257 .Ds
1258 get remote-file [local-file]
1259 .De
1260 .PP
1261 という文法の使用を許している。
1262 .I NcFTP
1263 はその点で異なっている、古いプログラムを使用していた人は、
1264 NcFTPの
1265 .I get
1266 は古いプログラムの
1267 .I mget
1268 コマンドのように振る舞うことに気付くだろう。
1269 .IR NcFTP
1270 での以下の指定:
1271 .Ds
1272 get file01 file01
1273 .De
1274 .PP
1275 は、``file01''と ``file02''というリモートファイルをダウンロードしよう
1276 としていることになる。
1277 ``\-z''フラグを使用すれば、古い動作をさせることもできる。
1278 .Ds
1279 get -z file01 ../junk/files/01.txt
1280 .De
1281 .PP
1282 のようにすればよい。
1283 .PP
1284 .I get
1285 では、ある日付より新しいファイルを取得するために
1286 ``\-n''フラグを使用することもできる。
1287 アーカイブのうち、最新のファイルだけを取得したいなら、
1288 全てをミラーする必要はない。
1289 ``3日より新しいファイル全てをダウンロードする''こともできる。
1290 これには、目的のディレクトリへ行ってから、
1291 .Ds
1292 get -n 3 *
1293 .De
1294 .PP
1295 とする。
1296 .PP
1297 NcFTPでは、
1298 .I get
1299 コマンドに ``reget''モードも組み込まれている。
1300 他のFTPプログラムは
1301 .I reget
1302 コマンドを別途に提供している。これはダウンロードしている間に接続が切れたとき
1303 有用である。リモートホストにファイルを最初から再送させるのではなく、
1304 切れたところから転送を続けさせることができる。
1305 .PP
1306 .I NcFTP
1307 はこの機能を組み込んでいる。NcFTPは前回中断してしまったところ
1308 から継続すべきか決定するためにリモートファイルとローカルファイルの日付
1309 とサイズを検査する。
1310 もし日付が同じで、ローカルファイルのサイズが小さいなら、NcFTPは
1311 ``reget''を試みる。
1312 .PP
1313 最後に、
1314 .I get
1315 のもっとも無駄な機能はリカーシブ(再帰)モードである、これは
1316 ``\-R''フラグで有効になる。
1317 これの特徴は全てのディレクトリの中身をダウンロードできることである。
1318 例えば:
1319 .Ds
1320 get -R /pub/info/help
1321 .De
1322 .PP
1323 これは現在のローカルディレクトリに ``./help''と呼ばれるディレクトリを作成し、
1324 その中に全てのファイルとサブディレクトリをコピーする。
1325 .PP
1326 この機能を用いるときには慎重に考えてから行うこと。
1327 巨大なディレクトリを取得すると、リモートホストを泥沼に
1328 陥らせることになりかねない。
1329 アーカイブ管理者は公共のサービスを提供しているのであるから、
1330 アーカイブを濫用してこのサービスを閉鎖させるようなことがあってはならない。
1331 .\"-------
1332 .SH "マクロ"
1333 .\"-------
1334 .PP
1335 NcFTPは簡単な マクロ/エイリアス 機能を持っている。
1336 ユーザ独自のコマンドの拡張や、
1337 イベントが起きたときに何か行うためにマクロを利用できる。
1338 .PP
1339 マクロを使用するためには、ホームディレクトリの
1340 .I ".ncftp"
1341 サブディレクトリの中に
1342 .I macros
1343 ファイルを作成する必要がある。
1344 .I "~/.ncftp"
1345 ディレクトリはNcFTPを最初に実行したときに自動的に作成されるが、
1346 多くのユーザは
1347 .I macros
1348 ファイルを必要としていないので、これは自分で作らなければならない。
1349 .PP
1350 複数の マクロを定義することができる。
1351 文法は以下の通りである:
1352 .Ds
1353 macro macro-name
1354     macro-body...
1355 end
1356 .De
1357 .PP
1358 以下は古い
1359 .I ftp
1360 プログラムのユーザが喜びそうなマクロの例である:
1361 .Ds
1362 macro binary
1363      type i
1364 end
1365 .De
1366 .PP
1367 マクロは NcFTPを起動させた後、通常の
1368 .I ncftp
1369 コマンドのように実行できる。
1370 .PP
1371 マクロは、
1372 .IR "Korn シェル" "の"
1373 関数や
1374 .IR "C シェル"
1375 の エイリアスのようにパラメータを持つこともできる。
1376 これらのパラメータはマクロに送られ、マクロ内部に対応した
1377 ``$''が
1378 あれば、それらは実際に指定された値に展開される。
1379 例として、以下のマクロを示す:
1380 .Ds
1381 macro cdls
1382     cd $1
1383     ls
1384 end
1385 .De
1386 .PP
1387 このマクロを実行するには、ftp接続して以下のようにしてみれば良い:
1388 .Ds
1389 cdls /pub
1390 .De
1391 .PP
1392 これは /pub へ
1393 .I cd
1394 し、そして
1395 .IR "ls" " ."
1396 によって /pub の内容をリストアップする。
1397 .PP
1398 $ はある程度
1399 .IR Bourne 
1400 シェルと
1401 .IR Korn
1402 シェルに似ている。
1403 文法の例は以下の通りである:
1404 .Ds
1405 $4      :  4番目の引数
1406 $*      :  全ての引数
1407 $@      :  全ての引数、各々ダブルクォートされる。
1408 $(2-5)  :  2,3,4番目の引数。
1409 $(2,5)  :  2,5番目の引数。
1410 $(3+)   :  3,4,5, ..., N番目の引数。
1411 .De
1412 .PP
1413 ``cdls''マクロコードのより良い例を以下に示す:
1414 .Ds
1415 macro cdls
1416     cd $1
1417     ls $(2+)
1418 end
1419 .De
1420 .PP
1421 .IR "イベントマクロ"
1422 と呼ばれる特別なマクロがいくつか存在する。
1423 NcFTPはイベントが起きたときに特定の名前を持つマクロを探し、
1424 それが存在していたら実行する。
1425 .PP
1426 まず
1427 .I ".start.ncftp"
1428 というイベントマクロがある。
1429 マクロファイルにそのような名前で定義されているマクロがあるなら、
1430 NcFTPが起動される度にそのマクロが実行される。
1431 .PP
1432 同じように、
1433 NcFTPを終了する度に実行される
1434 .I ".quit.ncftp"
1435 マクロというものもある。
1436 .PP
1437 その他のイベントマクロは各サイトに対応している。
1438 例えば、もしサイトのブックマークとして ``typhoon'' というもがあるのなら、
1439 ``typhoon'' に接続したり、接続を終了する度に実行される
1440 .I ".open.typhoon"
1441
1442 .I ".close.typhoon"
1443 とういうマクロを定義できる。
1444 また、より一般的なイベントマクロとして
1445 .I ".open.any"
1446
1447 .I ".close.any"
1448 というマクロもあり、これらはすべてのサイトの接続・切断時に実行される。
1449 これらのマクロを利用すれば、サイトへの接続終了時に、何らかの
1450 処理をするシェルスクリプトをサイト別に実行できる。
1451 このようなマクロは以下のように書く:
1452 .Ds
1453 macro .quit.ncftp
1454     echo "Started post-processing downloads at %H:%M:%S"
1455     !sh ~/scripts/download-decoder
1456     echo "Finished post-processing downloads at %H:%M:%S"
1457 end
1458 .De
1459 .PP
1460 もうひとつ、
1461 従来の
1462 .I ftp
1463 プログラムが
1464 .I ".netrc" 
1465 ファイルで使用していた
1466 古い
1467 .I macdef init
1468 ハックをコピーして使う利用法もある。
1469 以下に例をあげる:
1470 .Ds
1471 macro .open.infomac
1472     echo "Getting recent files list"
1473     get -z /pub/info-mac/help/recent-files ~/docs/recent
1474     ls -lrt
1475 end
1476 .De
1477 .\"-------
1478 .SH "コロンモードの使用"
1479 .\"-------
1480 .I "コロンモード"
1481 の特徴はシェルのコマンドラインから使用できることである。
1482 .PP
1483 大昔、ディスコが流行っていた時代には、インターネット標準の
1484 .I Trivial File Transfer Protocol
1485 を使った
1486 .I tftp
1487 と呼ばれるプログラムでファイルを取ってくることができた。
1488 シェル上で:
1489 .Ds
1490 get wuarchive.wustl.edu:/graphics/gif/README
1491 .De
1492 .PP
1493 のようにこのプログラムを使えば、
1494 wuarchive を呼び出し、REAMEファイルを取得できた。
1495 .PP
1496 NcFTPは、これと同じようにシェルのコマンドラインから使用できる:
1497 .Ds
1498 csh> ncftp wuarchive.wustl.edu:/graphics/gif/README
1499 csh> head REAMDE
1500 .De
1501 .PP
1502 これはシェルに、(この場合は
1503 .I "C シェル"
1504 から
1505 .I NcFTP
1506 を起動し、wuarchibe に接続、/graphics/gif/README を取得、取得できたら
1507 現在の作業ディレクトリに /README ファイルを書き出すように指せている。
1508 .PP
1509 .I "コロンモード"
1510 の機能はリモートサイトを訪ね回りたくなく、欲しいものが明確であるとき
1511 に便利である。
1512 またシェルスクリプトから実行するときに、
1513 NcFTPのコマンドシェルに入りたくないときや、
1514 出力を吐き出させたくないときにも便利である。
1515 .PP
1516 現在の作業ディレクトリに
1517 .I コロンモード
1518 のファイルを書き出したりしたくないとか、どこか
1519 のリモートファイルに出力をパイプしたいときがある。
1520 .I コロンモード
1521 にはこのためのオプションが存在する。
1522 これは
1523 .I ftpcat
1524 という perl スクリプトを書いた人から示唆された。
1525 ``\-c''オプションは標準出力ストリームに書き出す。
1526 ``\-m''オプションはページャ(例えば
1527 .IR more ")"
1528 にファイルをパイプする。
1529 もちろんこれは
1530 .I コロンモード
1531 に渡したものがディレクトリの場合はうまく動かない! 
1532 以下の例はリモートファイルのダンプを標準出力に渡す:
1533 .Ds
1534 csh> ncftp \-c wuarc:/graphics/gif/REAME
1535 .De
1536 .PP
1537 以下の例はリモートファイルを異なる場所にリダイレクトする:
1538 .Ds
1539 csh> ncftp \-c wu:/REAME > ~pdietz/thesis.tex
1540 .De
1541 .PP
1542 これはどのようにパイプラインを使うかを示している:
1543 .Ds
1544 csh> ncftp \-c wuarc:/REAME | tail | wc \-l
1545 10
1546 csh >
1547 .De
1548 .PP
1549 これはどのようにリモートファイルを表示(ページ)するかを示している。
1550 .Ds
1551 csh> ncftp \-m wuarc:/graphics/gif/README
1552 .De
1553 .\"-------
1554 .SH "ラインモードの使用"
1555 .\"-------
1556 .PP
1557 .I ラインモード
1558 を提供する唯一の理由は、
1559 .I curses
1560 ライブラリを装備していなかったり、このライブラリの機能が
1561 完全でないような原始的なシステムでも、何とかNcFTPを使えるように
1562 するためである。
1563 .PP
1564 多くのNcFTPの機能は
1565 .IR "ビジュアルモード"
1566 が求められる機能を除いて、同じように機能する。
1567 .IR "Preferences" "スクリーンと" "ブックマークエディタ"
1568 のようなものは動作しない。
1569 テキストエディタで
1570 .IR "~/.ncftp/prefs" " と " "~/.ncftp/bookmarks"
1571 ファイルを編集しなければならないだろう。
1572 .PP
1573 次善の解決策としては、
1574 .I GNU Readline
1575 のような強力な行編集ライブラリを、NcFTPをコンパイルするときに
1576 使用するとよい。
1577 .\"-------
1578 .SH "コマンドラインオプションのまとめ"
1579 .\"-------
1580 .PP
1581 シェルからNcFTPを呼び出したいとき、多くの
1582 .I UNIX
1583 プログラムと同じように ``ダッシュフラグ''を用いることができる。
1584 .PP
1585 ここにコマンドラインから使用できるオプションのリストを示す:
1586 .PP
1587 .Ds
1588 -D : デバッグモードとトレースを有効にする。
1589 -V : このセッションに``ビジュアル''モードを使用する。
1590 -L : このセッションに``ライン''モードを使用する。
1591 -H : ``version''コマンドからの情報を表示し終了する。
1592 .De
1593 .PP
1594 トレースをオンにしているとき、NcFTPは
1595 ホームディレクトリの
1596 .I ".ncftp"
1597 サブディレクトリにある
1598 .I "trace"
1599 と呼ばれるファイルにデバッグ情報を書き出す。
1600 バグリポートをする場合には、
1601 作者がログを追跡できるように
1602 .I trace
1603 ファイルをメールに添付してもらえるとありがたい。
1604 .PP
1605 .I コロンモード
1606 では、以上のフラグに加え
1607 .IR "open " " と " "get"
1608 コマンドで用いるフラグをパスとともに指定できる。
1609 以下は非常に複雑な例である:
1610 .Ds
1611 csh> ncftp \-r \-d 120 \-n 3 sphygmomanometer.unl.edu:/pub/stuff/*
1612 .De
1613 .PP
1614 これは2秒ごとにホストに再接続し、``/pub/stuff''ディレクトリから、3日
1615 前より新しい全てのファイルを取得させようとするものである。
1616 .\"-------
1617 .SH "著者"
1618 .\"-------
1619 .I NcFTP
1620 は Mike Gleason 、
1621 (mgleason@NcFTP\.com)によって書かれた。
1622 .I NcFTP
1623 is copyrighted 1995 by Mike Gleason.
1624 All rights reserved.
1625 .PP
1626 もっとも最新のバージョンは
1627 .IR "<ftp://ftp\.ncftp\.com/ncftp/>"
1628 にアーカイブされている。
1629 .\"-------
1630 .SH "謝辞"
1631 .\"-------
1632 .PP
1633 アイディアとある部分のコードは私のパートナーである 
1634  Phil Dietzによって寄付された。
1635 .PP
1636 何年にもわたってNcFTPをテストし、
1637 フィードバックしてくれた全ての人に感謝します。
1638 あなた方のサポートは、NcFTPを改良する上での動機となりました。
1639 .PP
1640 様々なプラットホームでのテストを可能にし、余分なディスクスペースを
1641 私に与えてくれ、UNL FTPサイトを管理してくれた 
1642 私のシステム管理者たちに、特に Charles Danielに感謝をしたい。
1643 .PP
1644 .IR "probe\.net"
1645
1646 .I ncftp
1647 の homeを与えてくれた
1648 .IR "Probe Techonology"
1649 の Dale Botkin と Tim Russell に感謝します。
1650 .PP
1651 仕事の合間にテストに付き合ってくれた
1652 Phil dietz、kok Hon Yin (hkok@yoda\.unl\.deu)、Andrey A. Chernov
1653 (ache@astral\.msk\.su)に感謝します。
1654 .PP
1655 ファイル名の保管(機能)に関するコードを作ってくれた Tim Mackenzie(t\.mackenzie@trl\.oz\.au)
1656 に感謝します。
1657 .PP
1658 manページを手助けしてくれた DaviD W. Sanderson(dws@ssec\.wisc\.edu)
1659 に感謝します。
1660 .\"-------
1661 .SH "バグ"
1662 .\"-------
1663 .PP
1664 .I curses
1665 ライブラリの制限のため、ビジュアルモードでのスクロールは遅いかもしれない。
1666 .PP
1667 .IR "ビジュアルモード"
1668 でのシェルエスケープ、サスペンド(^Z)とレジューム、割り込み(^C)は依然
1669 ではまだ不具合が残っているかもしれない。
1670 .PP
1671 .I bowser\.nintendo\.co\.jp
1672
1673 .IR sphoygmomanometer\.unl\.edu
1674 というサイトは存在していない。
1675 .\"-------
1676 .SH "関連項目"
1677 .\"-------
1678 .IR ftp (1),
1679 .IR ftpd (8),
1680 .IR nslookup (1),
1681 .IR archie (1),
1682 .IR rcp (1),
1683 .IR tftp (1).