2003年01月23日10時27分23秒に取得したデータです。
ncftpputはファイルの転送をインタラクティブモードを用いずにコマンドラインから行うことを目的としています。 これはあなたがシェルスクリプトやその他のプロセスからFTPを使用することが出来るようにします。 これにより対話型のFTPプログラムを使用せずにシェル・コマンドラインからファイルを操作したい上級ユーザに向けにncftpがつかえるようにします。
デフォルトではncftpgetはリモートホストへ匿名(anonymous)でログインしようと試みますが、ユーザ名とパスワードの情報を指定することも出来ます。 uオプションによりログイン時のユーザ名を、pオプションによりログイン時のパスワードを指定することが出来ます。 もしあなたがncftpgetをシェルから起動していれば-pオプションを省略していてもプロンプトでのパスワードの入力を求めます。
uやpのオプションを使用することは推奨されません。これはあなたのシェルスクリプトやプロセス情報を調べることが出来るだれにでもこの情報を確認することが出来ることになるからです。 たとえば、プログラムの実行中はpsコマンドを発行するだけでパスワードの情報を得ることが出来ます。 このような用途に用いる場合には-fオプションを用いたアカウント設定ファイルによる起動を使用するべきでしょう。 ただし、アカウント設定ファイルの名前自体は確認できるためファイルを指定するようにするだけでは安全では有りません。 あなたが-fオプションによりアカウント設定ファイルを指定して起動するなら以下の例のように記述する必要があります。
host sphygmomanometer.ncftp.com user gleason pass mypasswd
そして、このアカウント設定ファイルのパーミッション設定を他の誰も読むことが出来ないように変更することを忘れないでください。
dオプションはなぜファイル転送が失敗しているかを確認したい場合には大変有用なオプションです。 このオプションにより、指定する作業に対するFTPセッション全体の内容を出力してくれますので、あなたの考え違いを示唆してくれるでしょう。 もしあなたが特にデバッグ情報のアウトプット先ファイルを指定しなかった場合、デバッグ情報は標準出力に出力され、画面に表示されます。
あなたのホストのテキストファイルのフォーマットがリモートホストと異なる場合、アスキーモードによる転送を行うのがよいでしょう。 たとえば、ウィンドウズ・ベースのホストからUNIXシステムへ.TXTファイルを転送したい場合、 aオプションを用いてアスキー転送を行うことでMS-DOSテキスト・フォーマットからUNIXテキスト・フォーマットへ変換されたファイルがアップロードされます。
R オプションを用いることでディレクトリツリー全体のファイルを操作することが出来ます。
使用例:
$ ncftpput -R pikachu.nintendo.co.jp /incoming /tmp/stuff
この例を実行するだけでローカルホストの/tmp/stuff以下すべてのファイルをリモートホストの/incoming/stuffに転送することが出来ます。
リモートホストへファイルをアップロードするときにはTやSのオプションは有用です。 しかし、そのファイルの転送先へのパスなどが適切な設定になっている必要があります。 このオプションを用いて同じ名前のファイルの転送を行うことで、リモートサーバ上の同名ファイルの破壊を防ぐことが出来ます。 また、リモートサーバ上のプロセスが上書きしようとしたファイルを使用している場合などにも破壊が発生しません。
なお、ファイル転送が完了したことが通知されるまで、いずれかのプロセスがそのファイルを参照することは出来ません。 以下に例として、/pub/incoming/READMEのアップロードを試み、 もしファイルが使用中であれば一時ファイルとして/pub/incoming/README.tmpを使用する場合の例を示します。
使用例:
$ ncftpput -S .tmp bowser.nintendo.co.jp /pub/incoming /a/README
リモートサーバへ任意のローカルコマンドのから標準入出力の結果をそのまま送信するにはcオプションを使うのがよいでしょう。 例として、バックアップを準備し、それをリモートサーバへ転送する方法を示します。
使用例:
$ tar cf - / | ncftpput -c sonic.sega.co.jp /usr/local/backup.tar
製作者
参考情報
ncftpput(1), ncftpget(1), ncftp(1), ftp(1), rcp(1), tftp(1).
LibNcFTP (http://www.ncftp.com/libncftp/).