system management
1752802 メンバー
5721 オンライン
108789 解決策
新規ポスト

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

 
cube
アドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

フォーラム参加者様。お世話になっております。

現在WindowsXP(Professional)からUNIXマシンの2つのディレクトリ(/tmp1と/tmp2など)に、FTPでファイルをPUTする作業がルーチンで発生しております。

この作業をUNIX側からWinXPへFTPを行いUNIX側でファイルをGETしたいと思います。

現在UNIX側でのShellScriptを作成中なのですが、初心者のためかなり手こずっております。

フォーラム参加者様でどなたかヒントをいただけたらと思い投稿してみました。ご教授のほどよろしくお願いします。
9件の返信9
yoshimura
レギュラーアドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

ログインの自動化は .netrc を利用して、

対話形式で入力するコマンドに関しては

シェル内で

#! /bin/sh

filename=$1

ftp (ftpserver) <<+

get $filename

quit

+

というようにしてはいかがでしょうか?

(シェルスクリプト内の "<<+", "+" の

ような利用方法はヒアドキュメントと

呼ばれるそうですが。)

cube
アドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

この場合でもWindowsXP側でftpサービスを追加する必要はありますよね。

別件になってしまいますが、どうもそれがうまく行ってないようで・・
ishi-ishi
アドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

たぶん大丈夫だと思うのですが。。。

Windowsコンポーネントで、IISの追加をしてあるでしょうか?
S.Takeda
アドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

うまくいかない原因の切り分けですが、例えば

(1)WindowsXP側で「netstat -c」コマンドを投入してftpのポート(21番)にListenが出ているかどうかを確認する。

(2)Listenが出ていている場合には、nettlでTCP/IPのトレースにより通信状況を確認する。

を実施されてはいかがでしょうか?
cube
アドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

返信していたいただいた方々ありがとうございます。

私の方で説明不足だったので、補足を書きたいと思います。

・UNIX Server でFTP起動(get)→ WindowsXP

・WindowsXPのc:\hoge1とc:\hoge2にあるファイルをUnixServerのディレクトリ /tmp/test1/ と /tmp/test2に筋に対応するフォルダにファイルを入れたい

yoshimura さんの例をお借りした感じで行くとget $filenameでファイルとgetした後に、lcdでローカル(unix)側のフォルダを変更(/tmp/test2)した後、c:\hoge2にファイルをゲットしに行くってことで流れとしては大丈夫でしょうか。

初歩的な質問を投げてしまって申し訳ありません。

Scriptのヒントだけでもご教授のほどお願いします。

cube
アドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

yoshimura様

教えて頂いたシェルを作成してみましたが、

ログインIDとパスワードを入れるところで止まってしまいうまく動きません。(正確なログインIDと派諏訪ワードを入力してもシェルが次の処理を行ってくれません)

その辺も自動化したいのですが可能なのでしょうか?

また.netrcのファイルが私のシステムでは見つかりませんでしたが、どのディレクトリに配置して中の書式のサンプルなどありましたら、ご教授お願いできませんでしょうか。

度々申し訳ありません。
hazelwood
信頼あるコントリビューター

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

.netrcはホームディレクトリ直下に置きます。(デフォルトでは存在していません。)

サンプルは以下の通りです。

----- man netrcからの抜粋



次の指定は、 guestアカウントに sesameというパスワードがある hpxdzgホス

トに有効なエントリーとなります。

machine hpxdzg login guest password sesame

-------

他にも、.netrcのオーナとかの制限がありますので、man netrcを熟読してください。

nt
貴重なコントリビューター

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

> ログインIDとパスワードを入れるところで止まってしまいうまく動きません。

.netrc を使わない場合こういう方法もあります。

ftp -n HOST << EOF

user USER PASS

cd /hoge1

lcd /tmp/test1

get file1

cd /hoge2

lcd /tmp/test2

get file2

quit

EOF

-n は disbale 'auto-login' です。

cube
アドバイザー

HP-UXからWindowsXPへFTPを行い、ファイルをgetする

ntさん

うまく行きました。

勉強になりました。ありがとうございます。