noble (1) ncftp.1.gz

Provided by: manpages-ja_0.5.0.0.20221215+dfsg-1_all bug

名前

       Ncftp - インターネット ファイル 転送プログラム

書式

       ncftp [プログラム オプション] [[オープン オプション] ホスト名[:パス]]

オプション

       プログラム オプション:
         -D   : デバッグモード、トレースモードを有効にする。
         -L   : ビジュアルモードを使用しない(ラインモード)。
         -V   : ビジュアルモードを使用する。
         -H   : バージョン情報。

       コマンドラインのオープンオプション:
         -a   : 匿名(anonymous)で接続。
         -u   : ユーザ名とパスワードプロンプトで接続。
         -p X : 接続時に ポート番号Xで接続。
         -r   : 接続するまでリダイアルする。
         -d X : リダイアルまで、X秒の間隔を開けてリダイアルする。
         -g X : X回リダイアルして接続できなければ、あきらめる。

       コマンドラインの取得オプション:
         -C   : 強制接続(再取得)。
         -f   : 強制的に上書きする。
         -G   : ワイルドカードを使用しない。
         -R   : 再帰。ディレクトリ全体を取得するときに役立つ。
         -n X : X日前より新しいファイルのみを選択して取得。

説明

       NcFTP はインターネット標準の File Transfer Protocol に対するユーザーインターフェイスである。 リモートネッ
       トワークホストとのファイルの送受信を行い、 標準の ftp にはない付加的な機能を提供する。

       以下の3つモードがある: ビジュアルモードラインモードコロンモードである。

       使用しているシステムが最近のものなら、デフォルトのモードは ビジュアルモードにすべきである。 これは curses
       ライブラリを用いたフルスクリーン  インターフェイスである。 ビジュアルモードでは、不可解なコマンドを打つ必
       要はなく、 洒落たスクリーン インターフェイスで NcFTPの設定を編集することができる。

       ビジュアルモードでなければ、 対話的なシェル(interactive  shell)である  ラインモード  を使うことになるだろ
       う。 このモードはデフォルトの ftp プログラムのコマンドシェルのような簡易なインターフェイスである。

       3番目のモードである コロンモード は、NcFTP自身のシェルに入ること無しに、シェルコマンドラインから 直接ファ
       イルをすばやく取得する機能を提供する。 このモードはシェルスクリプトで便利である。

ビジュアルモードの概論

       ビジュアルモードになると、スクリーンはクリアされ、派手なスクリーンで書き換  えられる。   スクリーンの下か
       ら2番目に黒色のステータスバーが現れる。  ステイタスバーの下は入力行で、プログラムのシェルへコマンドを打ち
       込む場所である。

       NcFTPは何か命令されるまで待機している。  たいていはリモートのファイルシステムをオープンして、  ローカルマ
       シーンのファイルシステムと  ファイルのやり取りをすることになるだろう。 そのためにはリモートシステムの名前
       か、もしくはその    インターネットプロトコル    (IP)のアドレスを知っている必要がある。     例えば、名前が
       ``typhoon.unl.edu''  で そのIPアドレスが ``129.93.33.24''ならば、 そのシステムに接続するためには、NcFTPの
       open コマンド:

            open typhoon.unl.edu
            open 129.93.33.24

       を使用する。

       これらは、 Nebraska 大学 の typhoonと呼ばれるマシンに接続しようとする。  IPアドレス予告無く変更されること
       があるが、名前はたいてい同じままであるので、 名前を使用した方が好ましいだろう。

       リモートファイルシステムに接続するときは、接続するための 権限を持っていなければならない。 FTP Protocol の
       認証システムは、(UNIX等の)アカウントにログインすることにとてもよく似ている。 しかし、あなたが興味を持つよ
       うなリモートシステムの多くでは使用にあたって   アカウント名を求められることはないだろう。  多くの場合はリ
       モートファイルシステムへ匿名アクセスすれば、 公共的にアクセスできるファイルを交換できる。 NcFTPはデフォル
       トでは、リモートシステムに匿名アクセスを行う。 これは実際には、``anonymous''というアカウント名を用い、 パ
       スワードのプロンプトに管理者への礼儀として E-mailアドレスを記入する。  もちろん特定のアカウントを使用する
       こともできる。 これについては後述する。

       接続が成功すると、ステータスバーの片側にリモートシステムの名が表示される。 現在のリモートディレクトリの内
       容を見るには、 lsdir コマンドを使用すれば良い。前者は少ないスクリーンスペースで多く のリモートファイル
       を選べるように簡潔である。また後者はディレクトリの各項 目について詳しい情報を与えるように、冗長である。

       cd   コマンドを使えば、リモートシステムの他のディレクトリへ移動できる。   cd   コマンドは  BourneシェルKornシェル の同名のコマンドと、ほぼ似た動作をする。

       NcFTPの目的は他のシステムとデータの交換をすることである。 get  コマンドはリモートシステムからローカルシス
       テムへファイルをコピー する:

            get README.txt

       NcFTPはスクリーンに転送の進行状況を表示するので、 転送が終了するまでにどれくらいかかるかわかる。 転送が終
       了すると、NcFTPのコマンドシェルにコマンドを打つことがで きるようになる。

       put コマンドはローカルのシステムからリモートシステムへファイルをコピーするた めに使用できる:

            put something.tar

       リモートシステムでの作業が終わったら、他のシステムをオープ   ンすることができる。また   quit   コマンドは
       NcFTPを終了させる。

ブックマーク ファイル

       NcFTPの目標の一つは最小限のタイピングで最大限の便宜を得ること   である。   NcFTPは   ホームディレクトリの
       .ncftp サブディレクトリにある bookmarks という特別なファイルに、呼び出したサイトについての情報を 自動的に
       保存する。  各ブックマークには、ホスト名、 入ったリモートディレクトリ、アカウント情報などの設定が保存され
       る。 これにより、後で再びそのサイトを呼び出すのを簡単になる。  また前回ログオフしたときの全て情報を保存さ
       れている。

       この情報を保持すると、サイトの正式なホスト名を使う代りに、 より短く意味のある名前で呼び出すことができるよ
       うになる。 例えばサイト名 ``typhoon.unl.edu'' を頻繁に呼び出す と、ブックマーク名は ``typhoon''  になるだ
       ろう。すると、

            open typnoon.unl.edu

       の代りに

            open typhoon

       とすることができる。

       問い合わせたサイトを  NcFTPが特定できる限りにおいて、ブックマークの  名前を短縮することができる。  ブック
       マークの名前に``ty''から始まるものが他になければ、以下のようにできる:

            open ty

       ブックマークの機能を用いれば、実際の名前が覚えにくいような ホストに対して、より記憶しやすい名前を割り当て
       ることができる。  Nethack というポピュラーなゲームが linc.cis.upenn.edu の /pub/NH3.1 ディレ クトリに置か
       れているが、 このサイトのブックマークとして ``nethack'' を指定できる。 すると、

            open linc.cis.upenn.edu

       の代りに

            open nethack

       とすることもできる。

ブックマーク エディタの使用

       ブックマークファイルに蓄えられているブックマークを操作するため には、NcFTPに付属するブックマーク エディタ
       を使用する。 NcFTPの中から bookmarks と打てば、ブックマークエディタが起動し、 新しい画面が立ち上がる。

       右側に NcFTPが保存してあるリモートシステムのリストが 置かれる。 リモートシステムに接続するごとに、NcFTPは
       自動的に ブックマークファイルのエントリを保存する。  もしサイトの接続にまだ成功していない場合には、このリ
       ストは空に なる。

       左側にリストに対して行うことのできる命令が表示されている。  ブックマークエディタは、コマンド(編集したい設
       定のブックマークを 選択するなど) 待ち状態になる。

       ブックマークエディタには ``ホットキー'' という、単一のキーのみで動作する コマンドがある。  ホットキーコマ
       ンドの後には  enter を打つ必要はない。 例えばブックマークエディタを終了するためには、``x'' キーを打てばよ
       い。 マルチキーコマンドは最初に / を打ち、最後に enter キーを打つ必要 がある。 例えば選択したサイトを消去
       するには、``/''  キーを打った後に ``del'' ``enter'' と打てばよい。 リストの(反転している)選択行を下げるに
       は ``d'' キーを打ち、上げる には ``u'' キーを打つ。  ブックマークリストに多くのエントリがある場合には、全
       てを一画面で見せる  ことはできなくなるだろうが、ブックマークリストを適当にスクロールさせて 他のサイトも見
       ることができる。 ページを移動するには、``p'' ``n'' キーを使用する。

       ブックマークリストでサイトを選択するには、大文字を使う 方法もある。ブックマークリストに多くのエントリがあ
       るときに、ブック マーク名 ``nethack'' のサイトを選択するには ``N'' と打つ。すると ``n'' か ら始まるブック
       マークのサイトの先頭にリストの選択行が移動する。

       編集したいブックマークを反転させた後、 /ed を使えば、 そのブックマークの設定を示した画面が立ちあがる。

       Bookmark Options のスクリーンでは、編集したい設定はホットキーで指定する。  例えばブックマークの名前を編集
       するためには、``a''   と打つ。  このブックマークの編集を終えて、ブックマークエディタ画面に戻るには  ``x''
       キーを打てばよい。

ブックマークオプション

       サイトをオープンする時に使用する名前を変更するには Bookmark name フィールドの編集をする。ブックマーク名を
       変更した後には、このブッ クマークの参照はこの名前で行わなければならなくなる。例えば ``foobar'' という名前
       に変更したら、``open foobar''を用いなければならない。 これは、一つのリモートホストに対して、 複数のエント
       リを持つことができるようにするためである。   例えば   wuarchive.wustl.edu   に対して2つのブック   マーク
       ``wumac''と ``wuwindows''を作った場合に、 ``open wuarchive.wuustl.edu''としたのでは、NcFTPはどち らのエン
       トリを使用したら良いのかわからないからである。

       サイトのログイン情報は User, Password, Account フィールドによって変更する。 匿名(anonymous)ログインを用い
       る場合は、通常そのままにしておく。   リモートシステムによっては特定のアカウントを用いたいことがあるかもし
       れない、 このような場合には匿名(anonymous)ログイン以外の方法を用いる。

       Directory  フィールドには、リモートホストへの接続が成功したときに移 動するディレクトリを指定する。 サイト
       への接続を終了した時に、このフィールドは自動的に終了時のディレ クトリに更新される。

       Transfer Type フィールドは、ファイルを転送に標準以外の転送モードを使用する場合に 変更する。 NcFTPはたいて
       い UNIX システム上で使用されるし、リモートシステムの多くも UNIX 系でなので、デフォルトの転送モードは 何も
       変換されない binary, となっている。

       しかし、プレーンテキストを種類の異なる 非UNIX システム間で転送する必要があるときは、 ASCII モードに変更す
       ると良い。  これはテキストのみのファイルを正しく転送することを保証する。 多くの場合は、 binary 転送モード
       を使用する必要があるだろう。

       Port フィールドは標準的でないポート番号を使用するときに変更する。  私はこれまで異なるポート番号を必要とし
       たことがないが、必要な場合は変える ことができる。

       Has  SIZE Command フィールドはおそらく編集する必要はないだろう。 このフィールドは通常、情報の提供にだけ用
       いられる。 SIZE コマンドは、 FTP Protocol のコマンドで、 リモートサーバでサポートされていると NcFTPにとっ
       て都合が良い。  このコマンドがサポートされていれば、(クライアント側の) プログラムは転送前にリモートファ
       イルの正確なバイト数を 知ることができ、転送処理の進捗状況がわかるようになる。

       Has MDTM Command フィールドも編集する必要はないだろう。 リモートサーバがこれをサポートしていれば、NcFTPは
       リモー トファイルの更新日時を正確に知ることができ、同じ日付をローカルファイルに設定 する。

       Can  Use Passive FTP フィールドは、リモートのサーバが FTP Protocol の"PASV コマンドを使用できるかどうかを
       指定する。 FTPコネクションを設定する方法は2通りある。 デフォルトの方法は Port FTP  と呼ばれるものである。
       残念なことに、  Port  FTP  は、ローカルホストが  ファイヤーウォール  の内側にある場合は使用できない。一方
       Passive FTP  はファイヤーウォールの内側からでも使用できるので、  可能な場合はこちらを用いると良いだろう。
       これは多くの場合自動的に検出されるので、このフィールドを編集する必 要はないでだろう。

       Operating  System  フィールドは特定のオペレーティングシステムに依存する情報を伝え るために使用される。 も
       しOSがUNIX系ならば、NcFTPはリモートサーバのレスポンスについてあ る仮定をできる。 例えば、OSが UNIX なら、
       ls  コマンドは UNIX 上での `` /bin/ls -CF''のように動作しようとする。 OSが UNIX でなけれは、 ``-CF'' はリ
       モートサーバで使えないかも知れないし、 サーバが文句をいうかもしれない。  これらは多くの場合自動的に検出で
       きるので、おそらくこのフィー ルドを編集する必要はないだろう。

       コメントフィールドはサイトについての短い説明を記録するのに使用できる。  例えば、私の ``nethack'' エントリ
       では、このフィールドに 「Nethackの最新バージョンをおいてあるサイト」 という情報を書いてある。  ブックマー
       クエディタウインドウにいるとき、コメントを持つサイトを 反転させると、スクリーンの一番下にこのコメントが表
       示される。 したがって、コメントを見るためにエディットモードに入る必要はない。

好みの設定

       リモートホストごとに指定するオプションに加えて、NcFTPはユーザが設定可能な  グローバルオプションを持ってい
       る。 NcFTPの設定を変えるためには、NcFTP起動中に prefs コマンドを実行する。

       Default  open mode フィールドはNcFTPがどのように接続を試みるかを指定する。 もし匿名(anonymous)FTPを多く利
       用するならば、 anonymous に設定する。  FTPするホストの多くが匿名(anonymous)ログインを許可していない  な
       ら、  usr  password フィールドを設定するとよいだろう。 例えば、あなたの会社のネットワーク上で異なるマシ
       ンからのコピーをす るのに NcFTPを使うなら、 anonymous FTPモードを使いたくはないだろう。

       Anonymous password フィールドは匿名(anonymous)ログインする時にリモートのホストへ 与える値を変える場合に用
       いる。 匿名(anonymous)FTPのためにパスワードとして利用者の e-mailアドレ スが習慣的に用いられる(たいていは
       要求される)。これにより リモートホストの管理者は、だれがサービスを利用しているかを知ることができる。  も
       しNcFTPがあなたのe-mailアドレスを正しく得ることができなかったり、    あなたが異なったものを使いたいのなら
       ば、このフィールドを変えること。

       NcFTPは目の疲れを減らすために以前よりも空白を多く使用してい る。これが嫌なら、 Blank lines  between  cmds
       フィールドを変更すればこの機能を無効にできる。

       NcFTPは転送したファイルのログをとることができるので、  何を取得したのか忘れてしまった場合にはログを参照す
       ること ができる。 ログが ~/.ncftp/log に保存されるようにするには User log size  フィールドに0よりも大きい
       数をセットする。  おそらくこのファイルを無限に大きくはしたくないだろうから、ファイルの 最大のサイズをセッ
       トしておくとよい。

       NcFTPは以前にオープンした各サイトを全てブックマークファイルに保存するが、  保存するサイトの数の上限を設定
       したくなるかもしれない。 NcFTPをロードしたりブックマークを保存するのが遅いマ シンを使っているとか、ディス
       クスペースが貴重な場合には、 Max bookmarks to save フィールドを設定してブックマークの保存数を制限すること
       ができる。 制限に達したら、NcFTPは最後の接続が最も古いサイトの情報を捨てる。 言い換えれば、だいぶ前に一度
       だけ訪れ、忘れさられているサイトが 最初に捨てられる。

       NcFTPの機能によっては 大容量のテキストが表示されるので、 pager プログラムを使う必要がある。  例えば  page
       コマンドはリモートファイルを取得し、その閲覧のためにページャを使用する。  pager フィールド(もしくはコマン
       ドラインフラグ)によって、 NcFTPで使用するページャを指定できる。

       リモートホストとローカルホストの間でファイルを転送するとき、NcFTP は 転送の状態を示す progress meter を表
       示する。 何種類かあるので、 Progress meter フィールドを変えれば、他のものを試すことができる。

       Remote   messages  フィールドを変えると、リモートサーバのおしゃべりをどれくらい表示す  るかを制御できる。
       NcFTPは全てのエラーメッセージを表示するが、リモートサーバのメッセージの 多くはあまり役に立たない。 表示す
       るに値するメッセージは2つくらいである。 一つめは startup message である。 典型的には、サーバーに接続した
       ときサーバについて幾つかの重要な情報 を表示する。 サーバによっては 特定のディレクトリに入ったときに chdir
       messages  を表示する。 Remote messages フィールドをトグルすることによりこれらのメッセージを表示するか指定
       でき る。

       デフォルトでは、NcFTPを実行している間、ローカルマシンのディレクトリは NcFTPを実行した時点のディレクトリに
       なる。  よってダウンロードはそのディレクトリに行われる。 私は自分がダウンロードするものは指定したディレク
       トリ ``download directory'' を使用するのが好みである。 これは quotaの容量を超えたり、他のファイルを上書き
       することを妨げる  からである。  NcFTPの起動時にローカルディレクトリを変更するには  Startup  in  Local Dir
       フィールドを設定すればよい。 これにより、ダウンロードしたファイルのありかがわかるようになる。

       NcFTPの自身にも、表示したくなくなるような退屈なメッセージが いくつか存在している。 プログラムが  ``splash
       screen'' やプログラムの tip (ちょっと気のきいた利用法) 情報を表示するかは、 Startup messages で変えること
       ができる。

       リモートファイルを取得するとき、デフォルトではNcFTPはリモー  トファイルと同じ更新時刻をローカルファイルに
       も設定しようとする。 File timestamps フィールドを変更することによりこれを無効にすることができる。

       フルスクリーンの使用を好まないのなら、 Screen graphics フィールドを変更することにより行指向のモードを使用
       することができる。 一度 プレファレンス スクリーンから ビジュアル モードをオフにすると、 ライン モードを使
       用しているときに再度   プレファレンススクリーンに戻ることはで  きない。  ビジュアルモードに戻るためには、
       ``-V'' フラグをつけてNcFTPを起 動する。例えば以下のようにする。

            ncftp -V

コマンドリファレンス

       NcFTPのコマンドシェルがサポートしているコマンドについて説明する。 まず最初に知っておくべきコマンドは help
       である。

            help

       とコマンドシェルから打てば

       NcFTPはサポートしているコマンドの名前をすべて表示する。  さらに  helpの後に指定したコマンドを指定すれば、
       そのコマンドのヘルプが 得られる。例えば: open コマンドについての情報を表示するためには

            help open

       とする。

       シェルエスケープコマンドは簡単で、エクスクラメーションマーク !  である。 サブシェルを起動するには、単に

            !

       と打てばよい。

       1つのコマンドだけを実行させることもできる。以下のようにする:

            !date +%H:%M:%S

       cd コマンドはリモートホスト上でのワーキングディレクトリを変更する。  リモートサーバの異なるエリアへ移動す
       るためにはこのコマンドを使う。   新しいサイトをオープンしたばかりの時には、ルートディレクトリにいるであろ
       う。このサイトに、例えば ``/pub/news/comp.sources.d''という  ディレクトリがある、という情報を聞いたとしよ
       う。ここに移動するには、 ルートディレクトリから:

            cd pub
            cd news
            cd comp.sources.d

       もしくはより簡潔に

            cd /pub/news/comp.sources.d

       とすればよい。 移動がすんだら、 get, put, ls のようなコマンドを使用すれば、そのディレクトリにあるアイテム
       を参照できる。 UNIX  環境の幾つかのシェルでは直前にいたディレクトリにスイッチするような  機能を持っている
       (私の好む機能である)。 それらのシェルのように

            cd -

       とすれば、直前にいたディレクトリに移動できる。

       close コマンドはリモートサーバとの接続を切断する。 NcFTPは必要なときに自動的にこれを実行するので、 他のサ
       イトをオープンしたり、プログラムを終了したりするときに、 わざわざ手動で切断する必要はない。

       create  コマンドは、たまに使用する必要があるかもしれない。   これはリモートホスト上に空のファイルを作成す
       る。  リモートサーバの管理者に接触できないが、 関係者の誰かが、あなたのファイルを目にしてくれるかもしれな
       い 場合に役に立つかもしれない。 例えば

            create readline2.0.tar_is_corrupt

       とすることによって、 そのファイルを再投稿することをだれかに促すことができるかもしれない。

       debug コマンドは、基本的には作者自身とテスターのためのものである。 デバッグモードをオンにするためには、

            debug 1

       とする。 こうすると、NcFTPとリモートサーバとの間のすべてのメッセージを 見ることができる。この中にはデバッ
       グモードのみで 表示されるいくつかのメッセージが存在する。 バグ報告をする場合には、 trace ファイルを送って
       ほしい。 このファイルを作成するには、NcFTPを走らせてから

            debug trace 1

       とする。

       このときには、プログラムがどのようにコンパイルされたかがわかるように、 まず

            version
       と打って欲しい。

       NcFTPを終了した後、 ~/.ncftp/trace ファイルの中身を emailに添付して私宛に送ってもらえれば、  私はその内容
       からバージョン情報も知ることができる。

       dir  コマンドは詳細なディレクトリのリストを表示する。 これは UNIXの ``/bin/ls -l'' コマンドのような振る舞
       いをする。 リモートサーバが UNIX ホストなら、 ls と同じフラグも使うことができる、例えば

            dir -rt

       は UNIX 上の

            /bin/ls -lrt

       と同じように動作する。

       echo  コマンドはあまり便利には思えないかもしれないが、NcFTPのマクロで  使用すると有益なことがある。これは
       UNIX  シェルの  echo コマンドのように動作するが、いくつかの拡張 フラグを使用できる。 ``%'' フラグはすべて
       ``%'' フラグはすべて strftime(4) を通して表示される。 したがって

            echo It is now %H:%M on %B %d.

       と打てば、スクリーン上に以下のような表示を得ることができる。

            It is now 19:00 on January 22.

       ``@'' フラグも存在し、NcFTPは以下のように展開する:

            @H : 接続されたホストの名前。
            @D : リモートホストの現在の作業ディレクトリのフルパス。
            @J : リモートの現在の作業ディレクトリの短いパス名。
            @N : 改行。
            @n : 接続されたホストのブックマーク名。

       例えば

            echo "Connected to @H at %H:%M." >> junk

       と打った後で ``junk'' の内容を見れば、以下のようになっている:

            Connected to sphygmomanometer.unl.edu at 20:37.

       get コマンドはファイルをリモートホスト上の現在の作業ディレクトリから あなたのマシンの現在の作業ディレクト
       リにコピーする。  あなたのローカルディレクトリに ``README'' のコピーを置くためには、 以下のようにすればよ
       い:

            get README

       get コマンドは以下の ``ダウンロードの特殊機能'' で説明するようないくつかの 強力な特徴を持っている。

       bookmarks コマンドは ブックマーク エディタ を実行する。  これまでの内容を読んでいれば、これが何をするもの
       かを知っているはずである。 lcd コマンドはローカルホストに作用する ``l'' コマンドの最初のものである。 もし
       異なるローカルディレクトリにファイルをダウンロードしたければ、  ディレクトリを変えるために  lcd  を使って
       ディレクトリを変更してからダウンロードすればよい。

       その他の手頃なローカルコマンドとしては、 lls コマンドがある。これはローカルホスト上の ``/bin/ls''を実行し
       NcFTPのウインドウに結果を表示する。 コマンドシェルの ls と同じフラグを  lls  にも用いることができる。例え
       ば:

            lcd ~/doc
            lls -lrt p*.txt

       NcFTPには、ネームサービスへのインターフェースも組み込まれている。 これには lookup コマンドを用いる。 つま
       り以下のようにすれば、リモートホストのエントリを検索できるのである:

            lookup cse.unl.edu ftp.cs.unl.edu sphygmomanometer.unl.edu

       以下のように表示される:

            cse.unl.edu 129.93.33.1
            typhoon.unl.edu 129.93.33.24
            sphygmomanometer.unl.edu 129.93.33.126

       より詳細に表示することもできる。``-v''を用いればよい。例えば:

            lookup -v cse.unl.edu ftp.cs.unl.edu

       以下のように表示される:

            cse.unl.edu
                Name:     cse.unl.edu
                Address:  129.93.33.1

            ftp.cs.unl.edu:
                Name:     typhoon.unl.edu
                Alias:    ftp.cs.unl.edu
                Address:  129.93.33.24

       IP アドレスを与えることもできる。つまり次のような指定も可能である:

            lookup 129.93.33.24

       以下のように表示される:

            typhoon.unl.edu 129.93.33.24

       lpage コマンドを用いると、ローカルファイルを一度に一つだけ見ることができる。  デフォルトでは、NcFTPはファ
       イルを表示に設定されているページャプロ  グラムを使用する。 ``-b''フラグを指定すれば、組み込みのページャを
       使うこともできる。 例えば:

            lpage -b ~/.ncftp/bookmarks

       lpwd コマンドは現在のローカルディレクトリを表示する。  ローカルマシン上でどこのディレクトリにいるのかを忘
       れたときに    このコマンドを使うと良い。   ls   コマンドはディレクトリのリストを簡潔に表示する。   UNIXの
       ``/bin/ls -CF '' コマンドのように振る舞おうとする。 もしリモートのサーバーが UNIX ホストなら、 ls  と同じ
       フラグを使うことができる。 例えば:

            ls -rt

       は UNIX 上での

            /bin/ls -CFrt

       のように振る舞おうとする。

       mkdir コマンドはリモートホスト上で新しいディレクトリを作ろうとする。 多くの公的なサイトでは、利用者はその
       ような権限を持っていないであろう。

       サーバによっては、特殊な転送モードを使用しなければならないこともある。 多くのサーバではデフォルトのモード
       である  stream モードのみをサポートしている。NcFTPはstreamモードと同様に block モードもサポートする。この
       モードを用いる最大の利点は、   全ての転送に同じデータコネクションを用いることである。    stream    モード
       で、NcFTPとサーバは各ファイル毎に新しいコネクション  を確立しなければならない。これは余計な時間と帯域を消
       費する。 blockモードにするには mode コマンドを使用する。

            mode b

       とタイプすればよい。 ストリームモードを使用するためのコマンドは

            mode s

       である。 リモートサーバがblockモードをサポートしており、 その実装が正しいことが分かったなら、NcFTPは 自動
       的にblockモードに切り替わるので、このコマンドは使うべきでない。

       open  コマンドはリモートホストに接続する。  フラグを使わずに単にホストに接続することが多いだろうが、 実は
       open コマンドには、各種の機能を有効にするためのフラグが幾つか存在する。

       強制的に匿名(anonymous)でオープンするには、``-a''フラグを使用する。  NcFTP   の公式アーカイブサイトである
       ftp.ncftp.com  マシン上で、私は匿名ログインとユーザログインの両方を使用する必要がある。  ブックマーク  
       ディタ    は前回使用したログインのタイプを記憶してしまうので、     もし前回ユーザログインであったならば、
       ``-a''フラグを使用すれば ブックマーク エディタ を変更せずに匿名ログインに戻ることができるわけである。

       同様に、強制的にユーザログインにするには  ``-u''フラグを使用する。 そのときは、アクセスするための自分のア
       カウント名とパスワードを入力する。

       wuarchive.wustl.edu のような、巨大なアーカイブサイトの多くは混雑しているので、 それらに対する接続が保証さ
       れない。 NcFTPは、接続が成功するまで定期的にサイトに ``リダイアル'' するようにできる。 自動的にリダイアル
       するには ``-r''フラグを使用する。

       リダイアルには固有のパラメータが幾つか存在する。   リダイアルする間の遅延時間を秒単位で設定できる。    ま
       た、NcFTPがリダイアルをあきらめる最大回数を設定できる。  以下に、リダイアルモードの全機能を用いている例を
       示す:

       open -r -d 75 -g 10 bowser.nintendo.co.jp

       ``-r''でリダイアルモードにし、``-d''はリダイアル間隔を75秒にして、 ``-g''フラグはリダイアルの回数を10回に
       限定している。 デフォルトのリダイアル設定にまかせてかまわなければ、 ``-r''のみを指定しても良い。

       open  コマンドは オープンするホスト名を与えなければ、 ブックマーク エディタ を起動する。 ホストを選択する
       ために ブックマーク  エディタ  からもホストを選択することができる。ホスト名を反転させて  リターン(return)
       キーを打てばよい。

       page  コマンドはリモートファイルを一度に一つだけ表示する。 これは、リモートホスト上の README などのファイ
       ルを ダウンロードせずに読むことができるので便利である。 このコマンドは ファイルを見るために  Preferrences
       スクリーンの中の pager フィールドに設定したものを使用する。

       pdirpls  コマンドはそれぞれ dirls に等しい。ただし出力はページャへ送られる。 これらのコマンドは
       line モード での使用を念頭においている。ディレクトリのリストがオフスクリーンに スクロールしてしまうかも知
       れないからである。 もし、 ビジュアル モードでは、普通に ls すれば、オフスクリーンになる場合には組み込みの
       ページャが自動的に起動する。 それゆえ、 ビジュアル モードで pdirpls を使用することは奨めない。

       redirpredir  コマンドは最後に取ったディレクトリのリストを再表示するものである。  NcFTPは最後に行った
       dir もしくは ls コマンドからの出力を保存するので、それを再び見たいときに、ネットワーク の帯域を浪費せずに
       すむ。 predir コマンドは出力をページャに渡すことを除いて redir と同じである。

       predir コマンドは出力をページャに渡すことを除いて redir と同じである。

       私の使い方では、 接続の多くはダウンロードのためで、 アップロードはほとんど必要としなかった。  しかし  put
       コマンドもちゃんと存在していて、リモートホストへファイルを  アップロードすることができる。 例えば、いくつ
       かのファイルをリモートホストに送りたいならば、 以下のようにすればよい:

            lcd ~/docs/files
            put 02.txt 03.txt 05.txt 07.txt 11.txt

       put コマンドはあなたがリモートホスト上に正当な許可属性を持っていない場合には 動作しない。また、このコマン
       ドは ``-z''オプションを除いて get コマンドが持っているような特別な機能を持っていない。

       pwd  コマンドは現在のリモートディレクトリを表示する。 ビジュアル モードでは、これはステータスバーに表示さ
       れる。

       リモートファイルの名前は変更したいときには、 以下のように rename コマンドを使用すればよい:

            rename SPHYGMTR.TAR sphygmomanometer-2.3.1.tar

       NcFTPの使用を終了するには、もちろん quit と打てば良い。 ( byeexit, ^D などのコマンドも利用できる。)

       quote コマンドを使えば リモートサーバへ直接 FTP プロトコル を送ることができる。  通常、これは一般的なユー
       ザにとっては使いやすいものではない。

       rhelp  コマンドは、リモートサーバにヘルプリクエストを送信する。 FTP プロトコル のコマンドリストが表示され
       ることが多い。たまには、実際に有用な (サイト管理者への連絡方法など) が表示されることもある。

       リモートサーバによっては、サーバへ以下のような パラメータを与えることも可能かもしれない:

            rhelp NLST

       そのようなサーバは以下のように返答する:

            Syntax: NLST [ <sp> path-name ]

       リモートファイルを削除したい場合には、 rm コマンドを試してみるとよい。 多くの場合、あなたは正しい許可属性
       を持っていないだろうから   でうまく行かないであろう。  このコマンドはいかなるフラグも受け入れない。よって
       UNIX でのように ``-rf''を用いて、ディレクトリツリー全体を破壊する ようなことはできない。

       同様に、 rmdir コマンドはディレクトリを削除する。  リモートサーバによっては、空でないディレクトリを消すこ
       とができる かもしれないので気をつけるように。

       set コマンドはNcFTPの古いバージョンとの互換性のために用意されている。 現在では prefs コマンドによって置き
       換えられた。 基本的な文法は:

            set オプション 値

       である。ここでオプションは、      Preferences      スクリーンのフィールドに対応したショートネームである。
       preferencesフィールドのショートネームは  ~/.ncftp/prefs ファイルを眺めることによって見つけられる。 このコ
       マンドは主に line mode で使われるが、私はもうこのモードは公式にサポートしないので、  このコマンドは使用し
       ないで頂きたい。

       site  コマンドを使わなければならないようなこともあるかもしれない。 FTP プロトコル では ``サイト固有の''コ
       マンドが許可されている。 もちろんこれらの ``site''コマンドはサイトによって異なるが、 いくつかのサイトでサ
       ポートされているコマンドに chmod がある。 例えば:

            site chmod 644 README

       リモートサーバが何をサポートしているかを知るためには、 以下のようにしてみると良い:

            rhelp SITE
            site help

       サーバとのセッションの途中で、転送タイプを変更する必要があるかもしれない。 これには type コマンドを使用す
       ることができる。以下のように試してみると良い:

            tpe ascii
            type binary
            type image

       NcFTPについて私に連絡する必要が生じた場合には、 version コマンドに慣れて欲しい。 このコマンドは、あなたが
       使用しているNcFTPのバージョンと それがどのようにシステムにインストールされたかを私に伝えるために 多くの情
       報をダンプする。 このコマンドの出力をファイルに保存する方法を以下に示す。 この結果を私に送ってほしい。

            version > version.txt

ダウンロードの特殊機能

       リモートホスト上のファイルをローカルホストにコピーするには get コマンドを使用すればよい、と言うことはおそ
       らく既に知っているだろう。  しかし get コマンドにはいくつか有益なトリックがある。 まず、 NcFTP は既に持っ
       ているファイルをスキップできる。

            get file24

       が指定されたときに

       現在のローカルディレクトリに``file24''というファイルが存在する場合には、  NcFTPはそれを再びダウンロードし
       てネットワークの帯域を 消費してもよいかを決定するために、いくつかの追加的な情報を取得しようとする。

       NcFTPはリモートファイル``file24''の日付とサイズを取得しようとする。      もしそのファイルがローカルファイ
       ル``file24''と同じ日付で同じサイズなら、 NcFTPはそのファイルをスキップする。  NcFTPがリモートファイルの日
       付もしくはサイズを取得できなかったり、 それらが異なっていたら、NcFTPはファイルを取り寄せる。

       また、ローカルファイルの日付がリモートファイルの日付より新しければ、  NcFTPは既により新しいバージョン持っ
       ていると見なしてダウンロードを スキップする。

       つまり、NcFTPを用いればアーカイブを mirror することができるわけである。 例えば、``files''と呼ばれるリモー
       トディレクトリのファイル全てを   ミラーしていなければならい仕事があるとする。  そのディレクトリには多数の
       ファイルがあり、その中のいくつかが 時々更新されている。 ncftp  を使用して適切なローカルとリモートディレク
       トリを設定すれば この作業を簡単に行うことができる。

            get *

       NcFTPは古いファイルをスキップし、持っていないファイルと    前回から更新されたファイルのみをダウンロードす
       る。

       NcFTPが必要ないと判断した場合でも、  NcFTPのアドバイスを無視してファイルを   ダウンロードしたいかもしれな
       い。 強制的にダウンロードするには get に ``-f''フラグを用いれば良い。

            get -f README

       接続が切れたときにも強制的に継続してダウンロードを続けるためのフラグ  ``-C''の使用すればよい。 私は歴史的
       な理由から、これを ``forced reget(強制再取得)''と呼ぶことがある。

       get に ``-G''フラグを使用すれば ワイルドカードマッチング の機能を無効にできる。 他の FTP プログラムは  ダ
       ウンロードしているファイルのローカルパス名を指定するために

            get remote-file [local-file]

       という文法の使用を許している。  NcFTP  はその点で異なっている、古いプログラムを使用していた人は、 NcFTPの
       get は古いプログラムの mget コマンドのように振る舞うことに気付くだろう。 NcFTP での以下の指定:

            get file01 file01

       は、``file01''と ``file02''というリモートファイルをダウンロードしよう としていることになる。 ``-z''フラグ
       を使用すれば、古い動作をさせることもできる。

            get -z file01 ../junk/files/01.txt

       のようにすればよい。

       get  では、ある日付より新しいファイルを取得するために ``-n''フラグを使用することもできる。 アーカイブのう
       ち、最新のファイルだけを取得したいなら、 全てをミラーする必要はない。 ``3日より新しいファイル全てをダウン
       ロードする''こともできる。 これには、目的のディレクトリへ行ってから、

            get -n 3 *

       とする。

       NcFTPでは、 get コマンドに ``reget''モードも組み込まれている。 他のFTPプログラムは reget コマンドを別途に
       提供している。これはダウンロードしている間に接続が切れたとき 有用である。リモートホストにファイルを最初か
       ら再送させるのではなく、 切れたところから転送を続けさせることができる。

       NcFTP  はこの機能を組み込んでいる。NcFTPは前回中断してしまったところ から継続すべきか決定するためにリモー
       トファイルとローカルファイルの日付 とサイズを検査する。  もし日付が同じで、ローカルファイルのサイズが小さ
       いなら、NcFTPは ``reget''を試みる。

       最後に、 get のもっとも無駄な機能はリカーシブ(再帰)モードである、これは ``-R''フラグで有効になる。 これの
       特徴は全てのディレクトリの中身をダウンロードできることである。 例えば:

            get -R /pub/info/help

       これは現在のローカルディレクトリに ``./help''と呼ばれるディレクトリを作成し、  その中に全てのファイルとサ
       ブディレクトリをコピーする。

       この機能を用いるときには慎重に考えてから行うこと。 巨大なディレクトリを取得すると、リモートホストを泥沼に
       陥らせることになりかねない。 アーカイブ管理者は公共のサービスを提供しているのであるから、  アーカイブを濫
       用してこのサービスを閉鎖させるようなことがあってはならない。

マクロ

       NcFTPは簡単な  マクロ/エイリアス 機能を持っている。 ユーザ独自のコマンドの拡張や、 イベントが起きたときに
       何か行うためにマクロを利用できる。

       マクロを使用するためには、ホームディレクトリの .ncftp サブディレクトリの中に macros  ファイルを作成する必
       要がある。 ~/.ncftp ディレクトリはNcFTPを最初に実行したときに自動的に作成されるが、 多くのユーザは macros
       ファイルを必要としていないので、これは自分で作らなければならない。

       複数の マクロを定義することができる。 文法は以下の通りである:

            macro macro-name
                macro-body...
            end

       以下は古い ftp プログラムのユーザが喜びそうなマクロの例である:

            macro binary
                 type i
            end

       マクロは NcFTPを起動させた後、通常の ncftp コマンドのように実行できる。

       マクロは、 Korn シェルの 関数や C シェル の エイリアスのようにパラメータを持つこともできる。 これらのパラ
       メータはマクロに送られ、マクロ内部に対応した  ``$''が あれば、それらは実際に指定された値に展開される。 例
       として、以下のマクロを示す:

            macro cdls
                cd $1
                ls
            end

       このマクロを実行するには、ftp接続して以下のようにしてみれば良い:

            cdls /pub

       これは /pub へ cd し、そして ls .  によって /pub の内容をリストアップする。

       $ はある程度 Bourne シェルと Korn シェルに似ている。 文法の例は以下の通りである:

            $4      :  4番目の引数
            $*      :  全ての引数
            $@      :  全ての引数、各々ダブルクォートされる。
            $(2-5)  :  2,3,4番目の引数。
            $(2,5)  :  2,5番目の引数。
            $(3+)   :  3,4,5, ..., N番目の引数。

       ``cdls''マクロコードのより良い例を以下に示す:

            macro cdls
                cd $1
                ls $(2+)
            end

       イベントマクロ と呼ばれる特別なマクロがいくつか存在する。 NcFTPはイベントが起きたときに特定の名前を持つマ
       クロを探し、 それが存在していたら実行する。

       まず .start.ncftp というイベントマクロがある。 マクロファイルにそのような名前で定義されているマクロがある
       なら、 NcFTPが起動される度にそのマクロが実行される。

       同じように、 NcFTPを終了する度に実行される .quit.ncftp マクロというものもある。

       その他のイベントマクロは各サイトに対応している。 例えば、もしサイトのブックマークとして ``typhoon''  とい
       うもがあるのなら、 ``typhoon'' に接続したり、接続を終了する度に実行される .open.typhoon.close.typhoon
       とういうマクロを定義できる。 また、より一般的なイベントマクロとして .open.any.close.any  というマクロ
       もあり、これらはすべてのサイトの接続・切断時に実行される。 これらのマクロを利用すれば、サイトへの接続終了
       時に、何らかの 処理をするシェルスクリプトをサイト別に実行できる。 このようなマクロは以下のように書く:

            macro .quit.ncftp
                echo "Started post-processing downloads at %H:%M:%S"
                !sh ~/scripts/download-decoder
                echo "Finished post-processing downloads at %H:%M:%S"
            end

       もうひとつ、 従来の ftp プログラムが .netrc ファイルで使用していた 古い macdef init  ハックをコピーして使
       う利用法もある。 以下に例をあげる:

            macro .open.infomac
                echo "Getting recent files list"
                get -z /pub/info-mac/help/recent-files ~/docs/recent
                ls -lrt
            end

コロンモードの使用

       コロンモード の特徴はシェルのコマンドラインから使用できることである。

       大昔、ディスコが流行っていた時代には、インターネット標準の  Trivial  File Transfer Protocol を使った tftp
       と呼ばれるプログラムでファイルを取ってくることができた。 シェル上で:

            get wuarchive.wustl.edu:/graphics/gif/README

       のようにこのプログラムを使えば、 wuarchive を呼び出し、REAMEファイルを取得できた。

       NcFTPは、これと同じようにシェルのコマンドラインから使用できる:

            csh> ncftp wuarchive.wustl.edu:/graphics/gif/README
            csh> head REAMDE

       これはシェルに、(この場合は C シェル から  NcFTP  を起動し、wuarchibe  に接続、/graphics/gif/README  を取
       得、取得できたら 現在の作業ディレクトリに /README ファイルを書き出すように指せている。

       コロンモード の機能はリモートサイトを訪ね回りたくなく、欲しいものが明確であるとき に便利である。 またシェ
       ルスクリプトから実行するときに、 NcFTPのコマンドシェルに入りたくないときや、 出力を吐き出させたくないとき
       にも便利である。

       現在の作業ディレクトリに コロンモード のファイルを書き出したりしたくないとか、どこか のリモートファイルに
       出力をパイプしたいときがある。 コロンモード  にはこのためのオプションが存在する。  これは  ftpcat  という
       perl スクリプトを書いた人から示唆された。 ``-c''オプションは標準出力ストリームに書き出す。 ``-m''オプショ
       ンはページャ(例えば more) にファイルをパイプする。 もちろんこれは コロンモード に渡したものがディレクトリ
       の場合はうまく動かない!  以下の例はリモートファイルのダンプを標準出力に渡す:

            csh> ncftp -c wuarc:/graphics/gif/REAME

       以下の例はリモートファイルを異なる場所にリダイレクトする:

            csh> ncftp -c wu:/REAME > ~pdietz/thesis.tex

       これはどのようにパイプラインを使うかを示している:

            csh> ncftp -c wuarc:/REAME | tail | wc -l
            10
            csh >

       これはどのようにリモートファイルを表示(ページ)するかを示している。

            csh> ncftp -m wuarc:/graphics/gif/README

ラインモードの使用

       ラインモード  を提供する唯一の理由は、 curses ライブラリを装備していなかったり、このライブラリの機能が 完
       全でないような原始的なシステムでも、何とかNcFTPを使えるように するためである。

       多くのNcFTPの機能は ビジュアルモード が求められる機能を除いて、同じように機能する。 Preferencesスクリーン
       とブックマークエディタ のようなものは動作しない。 テキストエディタで ~/.ncftp/prefs~/.ncftp/bookmarks
       ファイルを編集しなければならないだろう。

       次善の解決策としては、 GNU Readline のような強力な行編集ライブラリを、NcFTPをコンパイルするときに  使用す
       るとよい。

コマンドラインオプションのまとめ

       シェルからNcFTPを呼び出したいとき、多くの  UNIX プログラムと同じように ``ダッシュフラグ''を用いることがで
       きる。

       ここにコマンドラインから使用できるオプションのリストを示す:

            -D : デバッグモードとトレースを有効にする。
            -V : このセッションに``ビジュアル''モードを使用する。
            -L : このセッションに``ライン''モードを使用する。
            -H : ``version''コマンドからの情報を表示し終了する。

       トレースをオンにしているとき、NcFTPは ホームディレクトリの .ncftp サブディレクトリにある trace と呼ばれる
       ファイルにデバッグ情報を書き出す。 バグリポートをする場合には、 作者がログを追跡できるように trace ファイ
       ルをメールに添付してもらえるとありがたい。

       コロンモード では、以上のフラグに加え openget コマンドで用いるフラグをパスとともに指定できる。  以下
       は非常に複雑な例である:

            csh> ncftp -r -d 120 -n 3 sphygmomanometer.unl.edu:/pub/stuff/*

       これは2秒ごとにホストに再接続し、``/pub/stuff''ディレクトリから、3日 前より新しい全てのファイルを取得させ
       ようとするものである。

著者

       NcFTP は Mike Gleason  、  (mgleason@NcFTP.com)によって書かれた。  NcFTP  is  copyrighted  1995  by  Mike
       Gleason.  All rights reserved.

       もっとも最新のバージョンは <ftp://ftp.ncftp.com/ncftp/> にアーカイブされている。

謝辞

       アイディアとある部分のコードは私のパートナーである
        Phil Dietzによって寄付された。

       何年にもわたってNcFTPをテストし、    フィードバックしてくれた全ての人に感謝します。    あなた方のサポート
       は、NcFTPを改良する上での動機となりました。

       様々なプラットホームでのテストを可能にし、余分なディスクスペースを 私に与えてくれ、UNL  FTPサイトを管理し
       てくれた 私のシステム管理者たちに、特に Charles Danielに感謝をしたい。

       probe.netncftp の homeを与えてくれた Probe Techonology の Dale Botkin と Tim Russell に感謝します。

       仕事の合間にテストに付き合ってくれた  Phil  dietz、kok  Hon  Yin  (hkok@yoda.unl.deu)、Andrey  A. Chernov
       (ache@astral.msk.su)に感謝します。

       ファイル名の保管(機能)に関するコードを作ってくれた Tim Mackenzie(t.mackenzie@trl.oz.au) に感謝します。

       manページを手助けしてくれた DaviD W. Sanderson(dws@ssec.wisc.edu) に感謝します。

バグ

       curses ライブラリの制限のため、ビジュアルモードでのスクロールは遅いかもしれない。

       ビジュアルモード  でのシェルエスケープ、サスペンド(^Z)とレジューム、割り込み(^C)は依然   ではまだ不具合が
       残っているかもしれない。

       bowser.nintendo.co.jpsphoygmomanometer.unl.edu というサイトは存在していない。

関連項目

       ftp(1), ftpd(8), nslookup(1), archie(1), rcp(1), tftp(1).