2011-05-31 15 views
0

ディレクトリを探し、最新の.zipファイル(そこに.zipと.logがあります)その後、別のディレクトリにコマンド・プロンプトを開き、次のコマンドを実行します:vbスクリプト:コマンドプロンプトを開き、ディレクトリに移動してコマンドを実行しようとしました

loaddb.bat -Dlc.file="C:\Program Files\XyEnterprise\SDL LiveContent\data_old\export\<name of the newest file.zip>" -Dlc.pswd=<oor password> RESTORE 

それは私がVBScriptの選んだように、Windows 2003 & 2008サーバー上で実行できるようにしているように、我々は、任意の言語をインストールすることはできません...

私はコマンドの実行とは別の作業をしているので、それを解読することはできません。次のように

私のコードは次のとおりです。

Dim fileNewest 
Dim fso 
Set fso = WScript.CreateObject("Scripting.FileSystemObject") 
Set oFolder = fso.GetFolder("C:\Program Files\XyEnterprise\SDL LiveContent\data\export") 

For Each aFile In oFolder.Files 
sExtension = fso.GetExtensionName(aFile.Name) 
    If sExtension = "log" Then 
      'Msgbox "The file extension is a " & sExtension 
     Else 
      'Msgbox "The file extension is a " & sExtension 
         If fileNewest = "" Then 
         Set fileNewest = aFile 
        Else 
        If fileNewest.DateCreated < aFile.DateCreated Then 
          Set fileNewest = aFile 
        End If 
        End If 
       End If 
Next 
Msgbox "The Newest File in the folder is " & fileNewest.Name & chr(13) & "Size: " & fileNewest.Size & " bytes" & chr(13) & "Was last modified on " & FileNewest.DateLastModified 

Dim objShell 
Set objShell = CreateObject("WScript.Shell") 
objShell.Run "%comspec% /k c: & cd ../../../Program Files\XyEnterprise\SDL LiveContent\data\export" 

どのように私は今、DOSプロンプトことを開いた後にコマンドを実行することができますか?

おかげで、

EDIT:

が答えを追加するには、アレックスKから多くの援助と協力:

objShell.Run "%comspec% /k c: & cd ""C:\Program Files (x86)\XyEnterprise\SDL LiveContent\"" & """"loaddb RESTORE -Dlc.file=C:\PROGRA~2\XYENTE~1\SDLLIV~1\data\Import\" & fileNewest.Name & " -Dlc.pswd=N2kAs72z""""" 
+0

COMMMANDプロンプトを使用してprogrammを実行することについて、どのような事実が話していますか? – reporter

+0

申し訳ありませんが、あなたは何を意味するか分かりません。 loaddb.batコマンドを12時間ごとに変更するファイルへのパスで実行する必要があります(スクリプトから取得しました) –

+0

です。 http://ss64.com/vb/run.htmlに例があります。 「DIR」という言葉を探します。うまくいけばそれはあなたが探しているものです。 – reporter

答えて

2

あなたはそれにスペースが含まれているとして、そのパスを引用する必要があります。

objShell.Run "%comspec% /k c: & cd ""../../../Program Files\XyEnterprise\SDL LiveContent\data\export""" 
+0

OKです。それは引用符なしで動作しますが。 –

+0

「C:\ Program Files \ BBC iPlayer Desktop」の下にxxx.batを作成しました。これは私のために動作します: 'objShell.Run '%comspec%/ kc:&cd" "C:\ Program Files \ BBC iPlayer Desktop \ ""& "" xxx.bat "" "' –

+0

華麗な、私もtest.batファイルを実行しているので、ありがとうございます。 .zipファイルの名前をこの文字列に渡すにはどうすればいいですか? –