2011-12-01 175 views
1

好吧,我創建了一個小劇本叫「淨文件」,輸出泵到一個文件中。在文件名中沒有空格,當我以交互方式運行它時,一切似乎都沒問題。於是我運行以下命令,我沒有得到任何結果,並沒有錯誤:VBS運行命令沒有輸出

set oWShell = CreateObject("WScript.Shell") 
owshell.run "net file > C:\openfiles.txt" 
Set owShell = nothing 

現在,如果修改此稍稍表現出執行相同的命令(並保持我的命令窗口已打開),它的工作原理就像預期(除了它不斷我不能擁有的cmd窗口)

set oWShell = CreateObject("WScript.Shell") 
owshell.run "%comspec% /k net file > C:\openfiles.txt" 
Set owShell = nothing 

這一定是明顯的,我只是想念。我只在藍色的月亮裏碰過一次vbs,所以它不是我以前用過的東西。

任何幫助,將不勝感激!提前致謝!

+0

對不起,我不明白:什麼事?沒有輸出? –

回答

2

你需要一個殼(即%COMSPEC%),以獲得外殼的功能,比如重定向; persisten窗口就是你所要求的:/ k讓shell保持打開狀態(嘗試/ c)而你應該使用.Run方法的第二個和第三個參數來獲得一個隱藏的窗口(並且可能等待之前的過程你zap的owShell)。

0

看一看Run。更改

owshell.run "%comspec% /k net file > C:\openfiles.txt" 

owshell.run "%comspec% /c net file > C:\openfiles.txt", 0, FALSE 

這將隱藏cmd並進行與腳本的其餘部分...如果你想等待命令完成,改變FALSETRUE

也請記住,有些機器是好笑,讓你直接寫文件到C:\。可能創建一個測試文件夾並寫入那裏!