1. ホーム
  2. スクリプト・コラム
  3. vbs

iisftpdr.vbsでFTP仮想ディレクトリを作成する方法

2022-02-09 20:18:05

に適用します。Windows Server 2003、Windows Server 2003 R2、Windows Server 2003 with SP1

コマンドラインスクリプトiisftpdr.vbs(systemrootSystem32に格納)を使用すると、Windows Server 2003ファミリーのIIS 6.0を実行しているローカルまたはリモートコンピュータ上に新しいFTP仮想ディレクトリを作成することができます。このコマンドは、コンテンツを作成または破棄するのではなく、仮想ディレクトリ構造とIIS構成ファイルを設定するだけです。

iisftpdr.vbs ファイルをお持ちでない場合は、以下のスクリプトハウスからダウンロードすることができます。 https://www.jb51.net/jiaoben/193101.html

iisftpdr.vbs を使用して新しい FTP 仮想ディレクトリを作成する場合は、サイトの作成とそのコンテンツの識別に必要な基本属性のみを指定します。iisftpdr.vbs では、新しい仮想ディレクトリを作成する際に IIS マネージャが使用するデフォルト属性と、継承する属性に関する同じルールに従います。ディレクトリのより高度なプロパティを設定するには、IIS マネージャを使用します。

重要 

スクリプトや実行ファイルを実行できるのは、ローカルコンピュータのAdministratorsグループのメンバーのみです。セキュリティのベストプラクティスとして、Administratorsグループに属さないアカウントを使用してコンピューターにログオンし、runasコマンドを使用して管理者としてスクリプトと実行ファイルを実行します。コマンドプロンプトで、runas /profile /User:MyComputerAdministratorのcmdと入力して、管理者権限でコマンドウィンドウを開き、cscript.exeScriptName(スクリプトへのフルパスと任意の引数を含む)と入力してください。
このトピックには以下の情報が含まれています。

-構文:コマンドとそれに続く引数やオプションを入力する際に使用しなければならない順序です。
-parameters: コマンドの変数に与えられる値です。
-Example:サンプルコードと結果の説明。


構文
iisftpdr /create FTPSite[VirtualPath] Name PhysicalPath [ /s Computer [ /u [Domain]User /p Password] ]。

パラメータ
FTPSサイト

必須 FTPサイトまたは設定データベースのパスの説明的な名前を指定します。

仮想パス

必要に応じて、サイト内の仮想ディレクトリへのパスを指定します。このパラメータは、仮想ディレクトリがサイトのルートディレクトリにない場合に必要です。

名前

必須 仮想ディレクトリの名前を指定します。仮想ディレクトリの名前は一意である必要はありません。ただし、FTPサイトに仮想ディレクトリと物理ディレクトリが同名で含まれている場合、インターネット上では物理ディレクトリは表示されません。

物理パス

仮想ディレクトリのコンテンツが存在する物理ディレクトリを指定します。指定されたディレクトリが存在しない場合、iisftpdr はそのディレクトリを作成します。

/s コンピュータ

指定したリモートコンピューターでスクリプトを実行します。コンピュータ名または IP アドレスをバックスラッシュなしで入力します。デフォルトはローカルコンピュータです。

/u [ドメイン]ユーザー

指定したユーザーアカウントの権限でスクリプトを実行します。このアカウントは、リモートコンピュータのAdministratorsグループのメンバである必要があります。デフォルトでは、スクリプトはローカルコンピュータの現在のユーザーの権限で実行されます。

/パスワード

u パラメーターで指定したユーザー アカウントのパスワードを指定します。

備考 
FTPSite(またはFTPSite/VirtualPath)、Name、PhysicalPathパラメータは、コマンドライン上で指定した順序で表示する必要があります。そうでない場合、iisftpdr.vbsは情報を正しく解釈しません。

例1.
次の例では、ローカルコンピュータのFTPサイトのルートディレクトリに仮想ディレクトリquot;Scripts;を作成しています。このディレクトリは、現在 C:\LibrariesScripts ディレクトリに保存されているコンテンツと関連付けられます。

コピーコード コードは以下の通りです。

iisftpdr /create "Test Downloads" Scripts C:\Libraries\Scripts

これを受けて、iisftpdrは新しい仮想ディレクトリの基本的なプロパティとともに、次のような成功メッセージを表示します。この例では、"virtual path" が仮想ディレクトリ構造を、"root" がコンテンツが配置されている物理ディレクトリを、そして "configuration database path" がIIS指定の構成データベースエントリ(これは、システムレジストリ内のレジストリのエントリに類似)をそれぞれ示していることが示されています。

サーバーに接続中 ............................... 完了です。
仮想パス = テストダウンロード/スクリプト
ROOT = C:\LibrariesScripts
メタベース・パス = MSFTPSVC/577648624/ROOT/Scripts

例2.
次の例では、リモートサーバーのFTPサイトに仮想ディレクトリ "Updates"を追加します。このコマンドは、既存の仮想ディレクトリquot;Documents"のサブディレクトリとして、quot;Finance"FTPサイト上に新しい仮想ディレクトリを作成します。

コマンド FinanceDocuments の最初のパラメーターは、FTP サイトと仮想パスを指定します。2番目のパラメータUpdatesは仮想ディレクトリの名前を指定し、3番目のパラメータは仮想ディレクトリの内容が保存されるサーバー上の物理ディレクトリを指定します。

このコマンドでは、/s パラメータでサーバー コンピューターを識別し、/u および /p パラメータでユーザーの管理者アカウント権限で iisftpdr.vbs を実行します。

コピーコード コードは以下の通りです。

iisftpdr /create Finance/Documents Updates C:\inetpub\ftproot\documents\updates /s SVR01 /u Admin01 /p p@SSw#rD2

これを受けて、iisftpdrは新しいFTPサイトの基本プロパティを表示します。この例では、このコマンドが発行される前に、SVR01 IISサーバー上に"Finance" FTPサイトとその"Documents" サブディレクトリーが存在します。FTP サイトまたはサブディレクトリが存在しない場合、コマンドは失敗します。

サーバーに接続中 . 完了です。
仮想パス = Finance/Documents/Updates
ROOT = C:\pubftproot■documents■updates
メタベース・パス = MSFTPSVC/2109607139/ROOT/Documents/Updates

もちろんbatと組み合わせればバッチ処理も実現できますし、時間指定タスクと組み合わせれば、定期的に、簡単に、素早くタスクを完了させることも可能です。