0
我想在我的PowerShell腳本中調用telnet.vbs
。如何在文件中的選定位置放置/替換一個單詞?
該腳本應該在foreach循環的每次迭代中重新啓動主機$line
。
telnet.vbs
腳本:
Option explicit
Dim oShell
set oShell= Wscript.CreateObject("WScript.Shell")"
oShell.Run "telnet"
WScript.Sleep 3000
oShell.Sendkeys "open $line~"
WScript.Sleep 5000
oShell.Sendkeys "y~"
WScript.Sleep 5000
oShell.Sendkeys "fusion~"
WScript.Sleep 4000
oShell.Sendkeys "tnniw~"
WScript.Sleep 4000
oShell.Sendkeys "shutdown -r -t 0~"
Wscript.Quit}
我想運行在環路和內部telnet.vbs
這個腳本,$line
應在每一次迭代來代替:
foreach($line in $servers)
{
& .\telnet.vbs
}
我嘗試這樣做:
(Get-Content .\telnet.vbs).Replace("(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/([0-9]|[1-2][0-9]|3[0-2]))","$line") | Set-Content .\telnet.vbs
但它什麼都不做。當然,語法是錯誤的。
如何將服務器名稱傳遞給VBScript [作爲參數](http://stackoverflow.com/a/2806731)? – vonPryz
我不知道如何在PowerShell中執行此操作。 – TraPS