• ベストアンサー

VBSでFTPを記述できますか?

OSはWIN2K PROですが、 FTPサーバーより、あるファイルをGETする バッチファイルを作成しました。 ftp 172.16.1.1 get test.txt c:\temp\get.txt バッチファイルで作成したのですが、 VBSでFTPサーバーよりファイルをGETする ということは可能でしょうか? 初心者ですが、よろしくお願いいたします。

  • enako
  • お礼率62% (298/476)

質問者が選んだベストアンサー

  • ベストアンサー
  • rara_sun
  • ベストアンサー率50% (271/539)
回答No.1

どのレベルで取得したいかわかりませんが、 ベタFTP呼び出しによる転送なら、こちらが参考になるのではないかと思います。 http://hp.vector.co.jp/authors/VA006065/soft/ftpgen.htm VBSでFTP接続から転送までコーディングしたかったら・・。 http://nt.sakura.ne.jp/~krsna/nazo/visitor/vi998001.html http://www.b21soft.co.jp/basp21/basp21pftp.html

enako
質問者

お礼

いろいろと参考になりました。 どうもありがとうございました。

関連するQ&A

  • FTP接続での不具合

    以下のコードでFTPへの接続を行っていますが、わからないところがあります。 (1)「リモートホストに接続できません」とエラーが出てしまいます。 どのあたりが怪しいのかわからず困っています。 (2)GET の書き方について "GET test.txt C:\Test\test.txt"    ******** 受信するファイル名の指定の仕方ですが、上記の*******印部分ですが、 たとえばURLがpc000のTempフォルダの下にあるtest.txtを受信したい場合はディレクトリの指定の書き方がわかりません。 "GET /Temp/test.txt C:\Test\test.txt" と書いたりもしていますが、はたしてこの書き方があっているのかわかりません。 ご教示ねがえませんでしょうか? よろしくお願いいたします。     'FTP接続------------------------------------- Inet1.URL = "FTP://pc000" Inet1.Password = "xxx" Inet1.UserName = "yyy" Text1.Text = Inet1.OpenURL Inet1.Execute Inet1.URL, _ "GET test.txt C:\Test\test.txt" '-------------------------------------

  • FTP送信

    バッチファイル(~.bat)でFTP送信を行いたいのですが。 条件としましては送信先が日付のフォルダに送る事です。 通常(私が知っているのは)・・・・ abcdef.bat    ftp -s:c:\temp\test.ftp test.ftp    open 192.168.210.112    (user)    (password)    put c:\temp\aaaa.txt bbbb\aaaa.txt    bye ・・・・・です。 abcdef.batを実行するとFTP送信が行われます。 これだと「test.ftp」が固定なので送信先のフォルダが変更できません。 何か方法がわかれば誰か教えて下さい。参考程度でもかまいません。

  • VBSで *.txt をサーバーにFTPするには?

    お世話になります。 早速ですが、 「ftpserver の plt00h フォルダー に *.txt をアップロードする」VBSのプログラムを作るため、 調べたところ、「ファイルをFTPするプログラムをNameSpaceで記述できる」とあったので 見てみると、JavaScript で記述してる例でした。 この例をもとに、VBSにする挑戦をしていますが、なかなかうまくいきません。 == JS sample ============================ var oShell = WScript.CreateObject("Shell.Application"); var oFolder = oShell.NameSpace("ftp://ftpusr:ftpusr@ftpserver/plt00h/") var desktop = oShell.NameSpace(0); var objFolderItems = desktop.Items(); for(var i = 0; i < objFolderItems.Count; i++) { var ofitem = objFolderItems.Item(i); if(ofitem.Name == "a.txt") { oFolder.CopyHere(ofitem); WScript.Sleep(6000); break; } } ==================================================== 上のコードをもとに、 「ftpserver の plt00h フォルダー に *.txt を,plt00vに *.org をアップロードする」 VBSのプログラム書きたいのですが、なかなかうまくいきません。 == VBS ============================================= Option explicit Dim oShell, FolderH, FolderV, desktop, objFolderItem Set oShell = WScript.CreateObject("Shell.Application") Set FolderH = oShell.NameSpace("ftp://ftpusr:ftpusr@ftpserver/plt00h/") Set FolderV = oShell.NameSpace("ftp://ftpusr:ftpusr@ftpserver/plt00v/") Set desktop = oShell.NameSpace(0) Set objFolderItems = desktop.Items() FolderH.CopyHere("*.txt") ← FTPサーバーのplt00h ヘ*.txtをアップロード? FolderV.CopyHere("*.org") ← FTPサーバーのplt00v ヘ*.orgをアップロード? WScript.Sleep(6000) ==================================================== FTPホスト     :ftpserver, FTPユーザ     :ftpusr FTP パスワード  :ftpusr FTP先DIR     :plt00h, plt00v 送信対象ファイル: :*.txt, *.org ちなみに、 ftp -s: ftp.txt の方式は、VBSで作成して、実行できました。 ご指導よろしくお願いいします。

  • FTPコマンドの記述方法

    FTPサーバーからCSVファイルをダウンロードしようとftpcmd.txtファイルに下記を記述しました。コマンドプロンプトではファイルの取得に成功しています。 open server_name password get remote_file local_file close bye 問題は、この取得したファイルを差し替えるローカルPC側のリダイレクトの場所である[ログファイル名]の.batファイルの記述の仕方がわかりません。 ftp -s:ftpcmd.txt > [ログファイル名]←ログファイル名の記述方法 例えば、”C:¥”に置きたい場合はどのように記述すればよろしいのでしょうか? よろしくお願いします。 ちなみに下記のHPを参考にして作成しました。 http://www.psytec.co.jp/tips/0102/

  • VBScriptでFTPサイトからダウンロードさせたい。

    こんにちは。 VBS(初心者)です。 このところ1週間くらい悩んでいるので教えて下さい。 VBSでFTPサイトから複数ファイルをダウンロードさせたいのですが、エラーが出てうまくいきません。 具体的には、 xxx.vbsをWクリックすれば、FTPサイトにアクセスし、ファイルをローカルにダウンロード完了。まで行いたいです。 現在、 1.ローカルフォルダTempにアクセス 2.TempからTemp1にコピー 3.Temp1からTemp2に移動 4.TempとTemp2のファイルサイズ表示、終了 という.vbsは出来ているんですが、1.をFTPサイトにしたいのです。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=381743 なども見てみましたがイマイチ理解できませんでした。 call FTPDownload($server, $user, $pwd, $svr_fname, $cli_fname[, $bin_flag, $proxy, $port]) 上記でもうまくいかないのですが・・・ .vbsでIEを起動したりすることは出来ています。 どなたかごぞんじ又は、サンプルが載っているサイトがあれば教えて下さい。 よろしくおねがいします。

  • プロキシサーバー経由でftpのgetを行う方法

    社内LANからプロキシサーバーを経由して、外部のサーバにあるファイルをftpでgetしようとし ています。 方法としては、定期実行するためにスクリプトで下記のようなテキスト(ftpcmd.txt)を作成し、 バッチファイル(auto.bat)でftpコマンドを実行する予定です。 <ftpcmd.txt> open xxx.xxx.xxx.xxx user1 passwd1 ascii get /logfiles/todaylog.txt quit <auto.bat> ftp -s:ftpcmd.txt ここで、質問なのですが、上記のような方法を用い、プロキシサーバー経由でftpを使ったgetを 行うには、どのように行えばいいでしょうか。または、DOSコマンドを使って、行うことは無理な のでしょうか。その場合、ほかにはどのようなやり方が考えられるでしょうか。どなたか、ご助言 いただけませんでしょうか。

  • windows2008でftpをバッチ実行する。

    windows2008サーバーでバッチファイルを作成しftpで複数ファイルを自動転送しようと思います。 今まで(OSはXP)はうまく実行していたのですが、windows2008サーバーではうまくいきません。 ちなみにバッチファイルは @echo off echo ●FTP処理 C:\Windows\System32\ftp.exe -s:d:\ftp\tohost.txt echo on @echo off echo ●終了 tohost.txtの内容は open 192.168.1.1 Uid Pwd bin put d:\ftpdata\a1.txt /afld/a2.txt bye です。 何かwindows2008による特別な方法があるのでしょうか? よろしくお願いいたします。

  • VB2005 FTPでファイルアップロード

    はじめまして。VB初心者なのですが質問があります。 VB2005でFTPでtxtファイルをアップロードをしたいです。 具体的にはCドライブに入れてある C\test1.txtをレンタルホームページのFTPサーバーにアップロードしたいです。 .NETでのアップロードの仕方はインターネットに情報が割とあるのですが、VB2005だとなかなか出てきません。 どのようなコードを書けばいいのでしょうか?よろしくお願いします。

  • FTPコマンドでgetしたい

    FTPコマンドでファイルを転送したい。操作はクライアントで行っています。 サーバ⇒クライアントです。ディレクトリー構成は。(サーバー側)c:\2.txt を⇒(クライアント側)c:\2.txt に転送したいのですがエラーが出ます。次のように実行しています。 ftp>get c:\2.txt c:\2.txt としています。これを実行すると次のエラー 【550 c:\2.txt :The filename is incorrect】 と出ます。どうすればよいでしょうか? ファイルタイプもascii にしたりbin にしたり試しているがだめです。 お願いします。

  • VBSでバッチを実行できません。

    C:\temp\test.batをVBSで実行しようとするのですが、 何度やっても実行されません。 想像ですが、c:\WINNT\System32\cmd.exeが動いている ようなのですが、肝心のC:\temp\test.batが動きません。 以下のように記述しました。 Dim WshShell Set WshShell = WScript.CreateObject("WScript.Shell") WshShell.Run ("cmd /c c:\temp\test,0,True") WIN2K、IE6.0の環境です。 どこか記述に誤りでもあるのでしょうか? どうぞよろしくお願いいたします。

専門家に質問してみよう