dポイントプレゼントキャンペーン実施中!

***現在の状況****

Win2000端末 →telnet→ Linuxサ-バ →FTP→ Win2000 (FTPサ-バ)
(Oracleサ-バ)

(1)Win2000端末 からtelnetでLinuxサ-バ (Oracleサ-バ)に入る

(2)Linuxサ-バ (Oracleサ-バ)で
  Oracleデータをエクスポート
  Win2000 (FTPサ-バ) にログイン
OracleデータをFTPで転送

現在のtelnet上のマニュアル操作
exp ORA_USER/ORA_PWD BUFFER=1000 FILE = ORA_USER.DMP ・・・・・・

ftp Win2000(FTPサ-バ名)

FTP_user
FTP_pwd

bin
put ORA_USER.DMP
bye

以上の操作をクーロンに組み込んで1日1回自動で実行させたいと思ってます。

現在のマニュアル操作をバッチファイルにすれば動くかなと思って
バッチファイル部分をコピーしてtelnetに貼り付けてみましたが
Win2000 (FTPサ-バ名) にログインする部分で止まってしまいます。

いろいろやってみましたがダメでした。
ftp -s FTP_FILE.txt Win2000(FTPサ-バ名)

ftp -d < FTP_FILE.txt

FTP_FILE.TXT
*****開始********************
OPEN Win2000(FTPサ-バ名)
FTP_user
FTP_pwd

bin
put ORA_USER.DMP
bye
*****終了*********************

どうやればうまくいくのでしょうか?

A 回答 (4件)

何度も済みません。


No.2間違ってますね。

ftp -ni << _FTP_SUBCMD_
open Win2000(FTPサ-バ名)
user FTP_user FTP_pwd
bin
put ORA_USER.DMP
bye
_FTP_SUBCMD_

ですね。
    • good
    • 0
この回答へのお礼

<  左向きリダイレクション?1つと 
<<  左向きリダイレクション?2つと

   意味はどう違うのでしょうか? 

お礼日時:2005/04/08 06:55

>ftp -ni < _FTP_SUBCMD_



>_FTP_SUBCMD_

>__このアンダーバーはどうゆう意味ですか?

個人的なシェルスクリプトでヒアドキュメントを使用する際のスタイルですので、特に意味はありません。
「_FTP_SUBCMD_」でなくて別な文字列でも構いません。


><  左向きリダイレクション?1つと 
><<  左向きリダイレクション?2つと

>   意味はどう違うのでしょうか? 

「<」は普通のリダイレクトで「<」の右側にあるものをファイルを思い、そのファイルの内容を標準入力に出力します。
No.2の場合だと「_FTP_SUBCMD_」をファイルだと思い、そんなファイルがないのでエラーになり次行以降はコマンド名として実行しようとするのでエラーが連続で出力され正常に動作しません。

「<<」は、ヒアドキュメントと言って、「<<」の右側にある文字列が出現するまで出現した文字列を標準入力に出力します。
    • good
    • 0

No.1の補足です。



シェルスクリプトに入れるのであれば、ヒアドキュメントを使用して

ftp -ni < _FTP_SUBCMD_
open Win2000(FTPサ-バ名)
user FTP_user FTP_pwd
bin
put ORA_USER.DMP
bye
_FTP_SUBCMD_

ですね。
    • good
    • 0
この回答へのお礼

ftp -ni < _FTP_SUBCMD_

_FTP_SUBCMD_

__このアンダーバーはどうゆう意味ですか?

お礼日時:2005/04/08 06:52

FTP_FILE.TXT


-------8<-------8<-------8<-------8<-------
open Win2000(FTPサ-バ名)
user FTP_user FTP_pwd
bin
put ORA_USER.DMP
bye
-------8<-------8<-------8<-------8<-------

ftp -ni < FTP_FILE.TXT

ですね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!